home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / develop™ Technical Journal / develop Issue 27 code / Internet_Config_Assistant.sit / Internet Config Assistant / toolkit / CWindows.cp < prev    next >
MacBinary  |  1996-06-30  |  16.9 KB  |  [TEXT/CWIE]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert MS-DOS Code Page Info (other/dosCodePage) ext Unsupported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Sun Jun 30 13:49:19 1996, modified Sun Jun 30 13:49:19 1996, creator 'CWIE', type ASCII, 16607 bytes "CWindows.cp" , at 0x415f 456 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[CWIE]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0b 43 57 69 6e 64 6f | 77 73 2e 63 70 00 00 00 |..CWindo|ws.cp...|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 43 57 49 | 45 01 00 00 00 00 00 00 |.TEXTCWI|E.......|
|00000050| 00 00 00 00 00 40 df 00 | 00 01 c8 ad fc 6e 9f ad |.....@..|.....n..|
|00000060| fc 6e 9f 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.n......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 65 cc 00 00 |........|....e...|
|00000080| 2f 2a 0d 09 46 69 6c 65 | 3a 09 09 43 57 69 6e 64 |/*..File|:..CWind|
|00000090| 6f 77 73 2e 63 70 0d 0d | 09 43 6f 6e 74 61 69 6e |ows.cp..|.Contain|
|000000a0| 73 3a 09 4c 61 79 65 72 | 20 62 75 69 6c 74 20 6f |s:.Layer| built o|
|000000b0| 6e 20 74 6f 70 20 6f 66 | 20 74 68 65 20 57 69 6e |n top of| the Win|
|000000c0| 64 6f 77 20 4d 61 6e 61 | 67 65 72 0d 0d 09 57 72 |dow Mana|ger...Wr|
|000000d0| 69 74 74 65 6e 20 62 79 | 3a 09 41 72 6e 6f 20 47 |itten by|:.Arno G|
|000000e0| 6f 75 72 64 6f 6c 0d 0d | 09 43 6f 70 79 72 69 67 |ourdol..|.Copyrig|
|000000f0| 68 74 3a 09 a9 20 31 39 | 39 34 2d 31 39 39 36 20 |ht:.. 19|94-1996 |
|00000100| 62 79 20 41 70 70 6c 65 | 20 43 6f 6d 70 75 74 65 |by Apple| Compute|
|00000110| 72 2c 20 49 6e 63 2e 2c | 20 61 6c 6c 20 72 69 67 |r, Inc.,| all rig|
|00000120| 68 74 73 20 72 65 73 65 | 72 76 65 64 2e 0d 0d 0d |hts rese|rved....|
|00000130| 2a 2f 0d 0d 23 69 6e 63 | 6c 75 64 65 20 22 43 57 |*/..#inc|lude "CW|
|00000140| 69 6e 64 6f 77 73 2e 68 | 22 0d 0d 23 69 6e 63 6c |indows.h|"..#incl|
|00000150| 75 64 65 20 3c 4c 6f 77 | 4d 65 6d 2e 68 3e 20 09 |ude <Low|Mem.h> .|
|00000160| 09 09 09 2f 2f 20 66 6f | 72 20 4c 4d 47 65 74 47 |...// fo|r LMGetG|
|00000170| 72 61 79 52 67 6e 28 29 | 0d 23 69 6e 63 6c 75 64 |rayRgn()|.#includ|
|00000180| 65 20 3c 4d 65 6d 6f 72 | 79 2e 68 3e 0d 23 69 6e |e <Memor|y.h>.#in|
|00000190| 63 6c 75 64 65 20 3c 53 | 63 72 69 70 74 2e 68 3e |clude <S|cript.h>|
|000001a0| 0d 23 69 6e 63 6c 75 64 | 65 20 3c 54 6f 6f 6c 55 |.#includ|e <ToolU|
|000001b0| 74 69 6c 73 2e 68 3e 0d | 23 69 6e 63 6c 75 64 65 |tils.h>.|#include|
|000001c0| 20 3c 53 6f 75 6e 64 2e | 68 3e 0d 0d 23 69 6e 63 | <Sound.|h>..#inc|
|000001d0| 6c 75 64 65 20 22 43 46 | 6f 6e 74 73 2e 68 22 0d |lude "CF|onts.h".|
|000001e0| 23 69 6e 63 6c 75 64 65 | 20 22 54 45 6e 76 69 72 |#include| "TEnvir|
|000001f0| 6f 6e 6d 65 6e 74 2e 68 | 22 0d 23 69 6e 63 6c 75 |onment.h|".#inclu|
|00000200| 64 65 20 22 6d 61 63 72 | 6f 73 2e 68 22 0d 23 69 |de "macr|os.h".#i|
|00000210| 6e 63 6c 75 64 65 20 22 | 61 73 73 65 72 74 2e 68 |nclude "|assert.h|
|00000220| 22 0d 0d 0d 0d 43 57 69 | 6e 64 6f 77 20 2a 43 57 |"....CWi|ndow *CW|
|00000230| 69 6e 64 6f 77 3a 3a 67 | 57 69 6e 64 6f 77 4c 69 |indow::g|WindowLi|
|00000240| 73 74 20 3d 20 4e 55 4c | 4c 3b 0d 0d 0d 0d 2f 2f |st = NUL|L;....//|
|00000250| 20 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -------|--------|
|00000260| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000270| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000280| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000290| 2d 2d 2d 2d 2d 0d 2f 2f | 20 43 57 69 6e 64 6f 77 |-----.//| CWindow|
|000002a0| 0d 2f 2f 20 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |.// ----|--------|
|000002b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002e0| 2d 2d 2d 2d 2d 2d 2d 2d | 0d 2f 2f 20 43 6f 6e 73 |--------|.// Cons|
|000002f0| 74 72 75 63 74 6f 72 0d | 0d 43 57 69 6e 64 6f 77 |tructor.|.CWindow|
|00000300| 3a 3a 43 57 69 6e 64 6f | 77 28 55 49 6e 74 31 36 |::CWindo|w(UInt16|
|00000310| 20 77 69 6e 64 6f 77 54 | 79 70 65 29 20 3a 0d 09 | windowT|ype) :..|
|00000320| 66 57 69 6e 64 6f 77 28 | 4e 55 4c 4c 29 2c 0d 09 |fWindow(|NULL),..|
|00000330| 66 4e 65 78 74 57 69 6e | 64 6f 77 28 4e 55 4c 4c |fNextWin|dow(NULL|
|00000340| 29 2c 0d 09 66 57 69 6e | 64 6f 77 54 79 70 65 28 |),..fWin|dowType(|
|00000350| 77 69 6e 64 6f 77 54 79 | 70 65 29 0d 7b 0d 09 2f |windowTy|pe).{../|
|00000360| 2f 20 50 72 65 70 65 6e | 64 20 74 68 69 73 20 74 |/ Prepen|d this t|
|00000370| 6f 20 74 68 65 20 6c 69 | 73 74 20 6f 66 20 77 69 |o the li|st of wi|
|00000380| 6e 64 6f 77 73 0d 09 74 | 68 69 73 2d 3e 53 65 74 |ndows..t|his->Set|
|00000390| 4e 65 78 74 57 69 6e 64 | 6f 77 28 67 57 69 6e 64 |NextWind|ow(gWind|
|000003a0| 6f 77 4c 69 73 74 29 3b | 0d 09 67 57 69 6e 64 6f |owList);|..gWindo|
|000003b0| 77 4c 69 73 74 20 3d 20 | 74 68 69 73 3b 0d 7d 0d |wList = |this;.}.|
|000003c0| 0d 0d 0d 2f 2f 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...// --|--------|
|000003d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000003e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000003f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000400| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 0d 2f 2f 20 43 57 |--------|--.// CW|
|00000410| 69 6e 64 6f 77 0d 2f 2f | 20 2d 2d 2d 2d 2d 2d 2d |indow.//| -------|
|00000420| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000430| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000440| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000450| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0d 2f 2f |--------|-----.//|
|00000460| 20 44 65 73 74 72 75 63 | 74 6f 72 0d 0d 43 57 69 | Destruc|tor..CWi|
|00000470| 6e 64 6f 77 3a 3a 7e 43 | 57 69 6e 64 6f 77 28 76 |ndow::~C|Window(v|
|00000480| 6f 69 64 29 0d 7b 0d 09 | 69 66 20 28 47 65 74 57 |oid).{..|if (GetW|
|00000490| 69 6e 64 6f 77 52 65 66 | 28 29 20 21 3d 20 4e 55 |indowRef|() != NU|
|000004a0| 4c 4c 29 0d 09 09 43 6c | 6f 73 65 28 29 3b 0d 09 |LL)...Cl|ose();..|
|000004b0| 0d 09 2f 2f 20 52 65 6d | 6f 76 65 20 74 68 69 73 |..// Rem|ove this|
|000004c0| 20 66 72 6f 6d 20 74 68 | 65 20 6c 69 73 74 20 6f | from th|e list o|
|000004d0| 66 20 77 69 6e 64 6f 77 | 73 0d 09 69 66 20 28 67 |f window|s..if (g|
|000004e0| 57 69 6e 64 6f 77 4c 69 | 73 74 20 3d 3d 20 74 68 |WindowLi|st == th|
|000004f0| 69 73 29 0d 09 7b 0d 09 | 09 67 57 69 6e 64 6f 77 |is)..{..|.gWindow|
|00000500| 4c 69 73 74 20 3d 20 47 | 65 74 4e 65 78 74 57 69 |List = G|etNextWi|
|00000510| 6e 64 6f 77 28 29 3b 0d | 09 7d 0d 09 65 6c 73 65 |ndow();.|.}..else|
|00000520| 20 69 66 20 28 67 57 69 | 6e 64 6f 77 4c 69 73 74 | if (gWi|ndowList|
|00000530| 20 21 3d 20 4e 55 4c 4c | 29 0d 09 7b 0d 09 09 66 | != NULL|)..{...f|
|00000540| 6f 72 20 28 43 57 69 6e | 64 6f 77 20 2a 77 69 6e |or (CWin|dow *win|
|00000550| 64 6f 77 20 3d 20 67 57 | 69 6e 64 6f 77 4c 69 73 |dow = gW|indowLis|
|00000560| 74 3b 20 77 69 6e 64 6f | 77 20 21 3d 20 4e 55 4c |t; windo|w != NUL|
|00000570| 4c 3b 20 77 69 6e 64 6f | 77 20 3d 20 77 69 6e 64 |L; windo|w = wind|
|00000580| 6f 77 2d 3e 47 65 74 4e | 65 78 74 57 69 6e 64 6f |ow->GetN|extWindo|
|00000590| 77 28 29 29 0d 09 09 7b | 0d 09 09 09 69 66 20 28 |w())...{|....if (|
|000005a0| 77 69 6e 64 6f 77 2d 3e | 47 65 74 4e 65 78 74 57 |window->|GetNextW|
|000005b0| 69 6e 64 6f 77 28 29 20 | 3d 3d 20 74 68 69 73 29 |indow() |== this)|
|000005c0| 0d 09 09 09 7b 0d 09 09 | 09 09 77 69 6e 64 6f 77 |....{...|..window|
|000005d0| 2d 3e 53 65 74 4e 65 78 | 74 57 69 6e 64 6f 77 28 |->SetNex|tWindow(|
|000005e0| 74 68 69 73 2d 3e 47 65 | 74 4e 65 78 74 57 69 6e |this->Ge|tNextWin|
|000005f0| 64 6f 77 28 29 29 3b 0d | 09 09 09 09 62 72 65 61 |dow());.|....brea|
|00000600| 6b 3b 0d 09 09 09 7d 0d | 09 09 7d 0d 09 7d 0d 7d |k;....}.|..}..}.}|
|00000610| 0d 0d 0d 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |....// -|--------|
|00000620| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000630| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000640| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000650| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 43 |--------|---.// C|
|00000660| 6c 6f 73 65 52 65 71 75 | 65 73 74 65 64 0d 2f 2f |loseRequ|ested.//|
|00000670| 20 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -------|--------|
|00000680| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000690| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000006a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000006b0| 2d 2d 2d 2d 2d 0d 2f 2f | 20 48 6f 6f 6b 20 66 75 |-----.//| Hook fu|
|000006c0| 6e 63 74 69 6f 6e 20 63 | 61 6c 6c 65 64 20 62 65 |nction c|alled be|
|000006d0| 66 6f 72 65 20 61 20 77 | 69 6e 64 6f 77 20 67 65 |fore a w|indow ge|
|000006e0| 74 73 20 63 6c 6f 73 65 | 64 0d 2f 2f 20 41 6e 20 |ts close|d.// An |
|000006f0| 6f 70 70 6f 72 74 75 6e | 69 74 79 20 74 6f 20 61 |opportun|ity to a|
|00000700| 73 6b 20 74 68 65 20 75 | 73 65 72 20 74 6f 20 63 |sk the u|ser to c|
|00000710| 6f 6e 66 69 72 6d 20 74 | 68 65 20 6f 70 65 72 61 |onfirm t|he opera|
|00000720| 74 69 6f 6e 0d 2f 2f 20 | 52 65 74 75 72 6e 73 20 |tion.// |Returns |
|00000730| 74 72 75 65 20 69 66 20 | 6d 75 73 74 20 67 6f 20 |true if |must go |
|00000740| 61 68 65 61 64 2e 0d 0d | 42 6f 6f 6c 65 61 6e 20 |ahead...|Boolean |
|00000750| 43 57 69 6e 64 6f 77 3a | 3a 43 6c 6f 73 65 52 65 |CWindow:|:CloseRe|
|00000760| 71 75 65 73 74 65 64 28 | 76 6f 69 64 29 0d 7b 0d |quested(|void).{.|
|00000770| 09 72 65 74 75 72 6e 20 | 74 72 75 65 3b 0d 7d 0d |.return |true;.}.|
|00000780| 0d 0d 0d 2f 2f 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...// --|--------|
|00000790| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000007a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000007b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000007c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 0d 2f 2f 20 43 6c |--------|--.// Cl|
|000007d0| 6f 73 65 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |ose.// -|--------|
|000007e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000007f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000800| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 43 |--------|---.// C|
|00000820| 6c 6f 73 65 20 74 68 65 | 20 77 69 6e 64 6f 77 20 |lose the| window |
|00000830| 77 69 74 68 6f 75 74 20 | 61 73 6b 69 6e 67 20 74 |without |asking t|
|00000840| 68 65 20 75 73 65 72 20 | 66 6f 72 20 63 6f 6e 66 |he user |for conf|
|00000850| 69 72 6d 61 74 69 6f 6e | 0d 2f 2f 20 43 61 6c 6c |irmation|.// Call|
|00000860| 20 43 6c 6f 73 65 20 61 | 66 74 65 72 20 43 6c 6f | Close a|fter Clo|
|00000870| 73 65 52 65 71 75 65 73 | 74 65 64 28 29 20 68 61 |seReques|ted() ha|
|00000880| 73 20 72 65 74 75 72 6e | 65 64 20 74 72 75 65 0d |s return|ed true.|
|00000890| 0d 76 6f 69 64 20 43 57 | 69 6e 64 6f 77 3a 3a 43 |.void CW|indow::C|
|000008a0| 6c 6f 73 65 28 76 6f 69 | 64 29 0d 7b 0d 09 61 73 |lose(voi|d).{..as|
|000008b0| 73 65 72 74 28 47 65 74 | 57 69 6e 64 6f 77 52 65 |sert(Get|WindowRe|
|000008c0| 66 28 29 20 21 3d 20 4e | 55 4c 4c 29 3b 0d 09 44 |f() != N|ULL);..D|
|000008d0| 69 73 70 6f 73 65 57 69 | 6e 64 6f 77 28 47 65 74 |isposeWi|ndow(Get|
|000008e0| 57 69 6e 64 6f 77 52 65 | 66 28 29 29 3b 0d 09 66 |WindowRe|f());..f|
|000008f0| 57 69 6e 64 6f 77 20 3d | 20 4e 55 4c 4c 3b 0d 7d |Window =| NULL;.}|
|00000900| 0d 0d 0d 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |....// -|--------|
|00000910| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000920| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000930| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000940| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 4d |--------|---.// M|
|00000950| 65 6e 75 73 57 69 6c 6c | 53 68 6f 77 0d 2f 2f 20 |enusWill|Show.// |
|00000960| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000970| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000980| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000990| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009a0| 2d 2d 2d 2d 0d 2f 2f 20 | 48 6f 6f 6b 20 66 75 6e |----.// |Hook fun|
|000009b0| 63 74 69 6f 6e 20 63 61 | 6c 6c 65 64 20 62 65 66 |ction ca|lled bef|
|000009c0| 6f 72 65 20 74 68 65 20 | 6d 65 6e 75 73 20 61 72 |ore the |menus ar|
|000009d0| 65 20 67 6f 69 6e 67 20 | 74 6f 20 62 65 20 64 69 |e going |to be di|
|000009e0| 73 70 6c 61 79 65 64 0d | 2f 2f 20 28 61 66 74 65 |splayed.|// (afte|
|000009f0| 72 20 74 68 65 20 75 73 | 65 72 20 68 61 73 20 63 |r the us|er has c|
|00000a00| 6c 69 63 6b 65 64 20 6f | 6e 20 74 68 65 6d 29 2e |licked o|n them).|
|00000a10| 0d 2f 2f 20 45 6e 61 62 | 6c 65 2f 64 69 73 61 62 |.// Enab|le/disab|
|00000a20| 6c 65 20 69 74 65 6d 73 | 20 61 70 70 72 6f 70 72 |le items| appropr|
|00000a30| 69 61 74 65 6c 79 0d 0d | 76 6f 69 64 20 43 57 69 |iately..|void CWi|
|00000a40| 6e 64 6f 77 3a 3a 4d 65 | 6e 75 73 57 69 6c 6c 53 |ndow::Me|nusWillS|
|00000a50| 68 6f 77 28 76 6f 69 64 | 29 0d 7b 0d 0d 7d 0d 0d |how(void|).{..}..|
|00000a60| 0d 0d 2f 2f 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |..// ---|--------|
|00000a70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000a90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000aa0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 2f 2f 20 57 69 6e |--------|-.// Win|
|00000ab0| 64 6f 77 41 63 74 69 76 | 61 74 65 64 0d 2f 2f 20 |dowActiv|ated.// |
|00000ac0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ad0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ae0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000af0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000b00| 2d 2d 2d 2d 0d 2f 2f 20 | 48 6f 6f 6b 20 66 75 6e |----.// |Hook fun|
|00000b10| 63 74 69 6f 6e 20 63 61 | 6c 6c 65 64 20 77 68 65 |ction ca|lled whe|
|00000b20| 6e 20 74 68 65 20 77 69 | 6e 64 6f 77 20 61 63 74 |n the wi|ndow act|
|00000b30| 69 76 61 74 69 6f 6e 20 | 73 74 61 74 65 20 63 68 |ivation |state ch|
|00000b40| 61 6e 67 65 73 0d 0d 76 | 6f 69 64 20 43 57 69 6e |anges..v|oid CWin|
|00000b50| 64 6f 77 3a 3a 57 69 6e | 64 6f 77 41 63 74 69 76 |dow::Win|dowActiv|
|00000b60| 61 74 65 64 28 42 6f 6f | 6c 65 61 6e 20 61 63 74 |ated(Boo|lean act|
|00000b70| 69 76 65 29 0d 7b 0d 23 | 70 72 61 67 6d 61 20 75 |ive).{.#|pragma u|
|00000b80| 6e 75 73 65 64 28 61 63 | 74 69 76 65 29 0d 0d 7d |nused(ac|tive)..}|
|00000b90| 0d 0d 0d 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |....// -|--------|
|00000ba0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000bb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000bc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000bd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 47 |--------|---.// G|
|00000be0| 65 74 43 57 69 6e 64 6f | 77 0d 2f 2f 20 2d 2d 2d |etCWindo|w.// ---|
|00000bf0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000c30| 2d 0d 2f 2f 20 52 65 74 | 75 72 6e 20 61 20 43 57 |-.// Ret|urn a CW|
|00000c40| 69 6e 64 6f 77 20 6f 62 | 6a 65 63 74 20 66 72 6f |indow ob|ject fro|
|00000c50| 6d 20 61 20 54 6f 6f 6c | 62 6f 78 20 77 69 6e 64 |m a Tool|box wind|
|00000c60| 6f 77 0d 2f 2f 20 52 65 | 74 75 72 6e 73 20 4e 55 |ow.// Re|turns NU|
|00000c70| 4c 4c 20 69 66 20 74 68 | 65 72 65 20 69 73 20 6e |LL if th|ere is n|
|00000c80| 6f 20 43 57 69 6e 64 6f | 77 20 6f 62 6a 65 63 74 |o CWindo|w object|
|00000c90| 20 61 73 73 6f 63 69 61 | 74 65 64 20 77 69 74 68 | associa|ted with|
|00000ca0| 20 74 68 69 73 20 77 69 | 6e 64 6f 77 0d 0d 43 57 | this wi|ndow..CW|
|00000cb0| 69 6e 64 6f 77 2a 20 43 | 57 69 6e 64 6f 77 3a 3a |indow* C|Window::|
|00000cc0| 47 65 74 43 57 69 6e 64 | 6f 77 28 57 69 6e 64 6f |GetCWind|ow(Windo|
|00000cd0| 77 52 65 66 20 77 69 6e | 64 6f 77 29 0d 7b 0d 2f |wRef win|dow).{./|
|00000ce0| 2f 20 3f 3f 3f 20 54 72 | 79 20 74 6f 20 77 72 69 |/ ??? Tr|y to wri|
|00000cf0| 74 65 20 74 68 69 73 20 | 61 73 20 61 20 66 72 69 |te this |as a fri|
|00000d00| 65 6e 64 20 63 6f 6e 76 | 65 72 73 69 6f 6e 20 6f |end conv|ersion o|
|00000d10| 70 65 72 61 74 6f 72 0d | 09 43 57 69 6e 64 6f 77 |perator.|.CWindow|
|00000d20| 2a 20 72 65 73 75 6c 74 | 3b 0d 09 66 6f 72 20 28 |* result|;..for (|
|00000d30| 72 65 73 75 6c 74 20 3d | 20 67 57 69 6e 64 6f 77 |result =| gWindow|
|00000d40| 4c 69 73 74 3b 20 72 65 | 73 75 6c 74 20 21 3d 20 |List; re|sult != |
|00000d50| 4e 55 4c 4c 3b 20 72 65 | 73 75 6c 74 20 3d 20 72 |NULL; re|sult = r|
|00000d60| 65 73 75 6c 74 2d 3e 47 | 65 74 4e 65 78 74 57 69 |esult->G|etNextWi|
|00000d70| 6e 64 6f 77 28 29 29 0d | 09 7b 0d 09 09 69 66 20 |ndow()).|.{...if |
|00000d80| 28 72 65 73 75 6c 74 2d | 3e 47 65 74 57 69 6e 64 |(result-|>GetWind|
|00000d90| 6f 77 52 65 66 28 29 20 | 3d 3d 20 77 69 6e 64 6f |owRef() |== windo|
|00000da0| 77 29 0d 09 09 09 62 72 | 65 61 6b 3b 0d 09 7d 0d |w)....br|eak;..}.|
|00000db0| 09 72 65 74 75 72 6e 20 | 72 65 73 75 6c 74 3b 0d |.return |result;.|
|00000dc0| 7d 0d 0d 0d 0d 2f 2f 20 | 2d 2d 2d 2d 2d 2d 2d 2d |}....// |--------|
|00000dd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000de0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000df0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 0d 2f 2f 20 |--------|----.// |
|00000e10| 50 75 6c 73 65 0d 2f 2f | 20 2d 2d 2d 2d 2d 2d 2d |Pulse.//| -------|
|00000e20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000e50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0d 2f 2f |--------|-----.//|
|00000e60| 20 48 6f 6f 6b 20 66 75 | 6e 63 74 69 6f 6e 20 63 | Hook fu|nction c|
|00000e70| 61 6c 6c 65 64 20 72 65 | 67 75 6c 61 72 6c 79 0d |alled re|gularly.|
|00000e80| 0d 76 6f 69 64 20 43 57 | 69 6e 64 6f 77 3a 3a 50 |.void CW|indow::P|
|00000e90| 75 6c 73 65 28 76 6f 69 | 64 29 0d 7b 0d 09 2f 2f |ulse(voi|d).{..//|
|00000ea0| 20 6e 6f 74 68 69 6e 67 | 20 74 6f 20 64 6f 20 69 | nothing| to do i|
|00000eb0| 6e 20 73 75 70 65 72 63 | 6c 61 73 73 0d 7d 0d 0d |n superc|lass.}..|
|00000ec0| 0d 0d 2f 2f 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |..// ---|--------|
|00000ed0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ee0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000ef0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 2f 2f 20 52 65 73 |--------|-.// Res|
|00000f10| 69 7a 65 42 79 0d 2f 2f | 20 2d 2d 2d 2d 2d 2d 2d |izeBy.//| -------|
|00000f20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000f50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0d 2f 2f |--------|-----.//|
|00000f60| 20 46 75 6e 63 74 69 6f | 6e 20 74 6f 20 72 65 73 | Functio|n to res|
|00000f70| 69 7a 65 20 61 20 77 69 | 6e 64 6f 77 20 74 6f 20 |ize a wi|ndow to |
|00000f80| 74 68 65 20 69 6e 64 69 | 63 61 74 65 64 20 72 65 |the indi|cated re|
|00000f90| 6c 61 74 69 76 65 20 64 | 69 6d 65 6e 73 69 6f 6e |lative d|imension|
|00000fa0| 73 0d 0d 76 6f 69 64 20 | 43 57 69 6e 64 6f 77 3a |s..void |CWindow:|
|00000fb0| 3a 52 65 73 69 7a 65 42 | 79 28 47 72 61 70 68 69 |:ResizeB|y(Graphi|
|00000fc0| 63 61 6c 55 6e 69 74 20 | 64 78 2c 20 47 72 61 70 |calUnit |dx, Grap|
|00000fd0| 68 69 63 61 6c 55 6e 69 | 74 20 64 79 29 0d 7b 0d |hicalUni|t dy).{.|
|00000fe0| 23 70 72 61 67 6d 61 20 | 75 6e 75 73 65 64 28 64 |#pragma |unused(d|
|00000ff0| 78 2c 20 64 79 29 0d 09 | 61 73 73 65 72 74 28 66 |x, dy)..|assert(f|
|00001000| 61 6c 73 65 29 3b 09 2f | 2f 20 4e 6f 74 20 69 6d |alse);./|/ Not im|
|00001010| 70 6c 65 6d 65 6e 74 65 | 64 20 79 65 74 0d 7d 0d |plemente|d yet.}.|
|00001020| 0d 0d 0d 2f 2f 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...// --|--------|
|00001030| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001040| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001050| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001060| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 0d 2f 2f 20 52 65 |--------|--.// Re|
|00001070| 73 69 7a 65 54 6f 0d 2f | 2f 20 2d 2d 2d 2d 2d 2d |sizeTo./|/ ------|
|00001080| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001090| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000010a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000010b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0d 2f |--------|------./|
|000010c0| 2f 20 46 75 6e 63 74 69 | 6f 6e 20 74 6f 20 72 65 |/ Functi|on to re|
|000010d0| 73 69 7a 65 20 61 20 77 | 69 6e 64 6f 77 20 74 6f |size a w|indow to|
|000010e0| 20 74 68 65 20 69 6e 64 | 69 63 61 74 65 64 20 61 | the ind|icated a|
|000010f0| 62 73 6f 6c 75 74 65 20 | 64 69 6d 65 6e 73 69 6f |bsolute |dimensio|
|00001100| 6e 73 0d 0d 76 6f 69 64 | 20 43 57 69 6e 64 6f 77 |ns..void| CWindow|
|00001110| 3a 3a 52 65 73 69 7a 65 | 54 6f 28 47 72 61 70 68 |::Resize|To(Graph|
|00001120| 69 63 61 6c 55 6e 69 74 | 20 77 69 64 74 68 2c 20 |icalUnit| width, |
|00001130| 47 72 61 70 68 69 63 61 | 6c 55 6e 69 74 20 68 65 |Graphica|lUnit he|
|00001140| 69 67 68 74 29 0d 7b 0d | 09 53 69 7a 65 57 69 6e |ight).{.|.SizeWin|
|00001150| 64 6f 77 28 66 57 69 6e | 64 6f 77 2c 20 77 69 64 |dow(fWin|dow, wid|
|00001160| 74 68 2c 20 68 65 69 67 | 68 74 2c 20 74 72 75 65 |th, heig|ht, true|
|00001170| 29 3b 0d 09 0d 09 53 65 | 74 50 6f 72 74 28 47 65 |);....Se|tPort(Ge|
|00001180| 74 47 72 61 66 50 74 72 | 28 29 29 3b 0d 09 43 52 |tGrafPtr|());..CR|
|00001190| 65 63 74 20 77 69 6e 64 | 6f 77 52 65 63 74 20 3d |ect wind|owRect =|
|000011a0| 20 47 65 74 47 72 61 66 | 50 74 72 28 29 2d 3e 70 | GetGraf|Ptr()->p|
|000011b0| 6f 72 74 52 65 63 74 3b | 09 2f 2f 20 55 73 65 20 |ortRect;|.// Use |
|000011c0| 46 72 61 6d 65 28 29 20 | 3f 3f 3f 0d 0d 09 43 6c |Frame() |???...Cl|
|000011d0| 69 70 52 65 63 74 28 77 | 69 6e 64 6f 77 52 65 63 |ipRect(w|indowRec|
|000011e0| 74 29 3b 0d 09 45 72 61 | 73 65 52 65 63 74 28 77 |t);..Era|seRect(w|
|000011f0| 69 6e 64 6f 77 52 65 63 | 74 29 3b 0d 09 49 6e 76 |indowRec|t);..Inv|
|00001200| 61 6c 52 65 63 74 28 77 | 69 6e 64 6f 77 52 65 63 |alRect(w|indowRec|
|00001210| 74 29 3b 09 09 09 09 09 | 09 2f 2f 20 55 70 64 61 |t);.....|.// Upda|
|00001220| 74 65 20 63 6f 6e 74 65 | 6e 74 20 6f 66 20 77 69 |te conte|nt of wi|
|00001230| 6e 64 6f 77 20 6c 61 74 | 65 72 0d 7d 0d 0d 0d 0d |ndow lat|er.}....|
|00001240| 2f 2f 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |// -----|--------|
|00001250| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001260| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001270| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001280| 2d 2d 2d 2d 2d 2d 2d 0d | 2f 2f 20 5a 6f 6f 6d 0d |-------.|// Zoom.|
|00001290| 2f 2f 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |// -----|--------|
|000012a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000012b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000012c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000012d0| 2d 2d 2d 2d 2d 2d 2d 0d | 2f 2f 20 46 75 6e 63 74 |-------.|// Funct|
|000012e0| 69 6f 6e 20 63 61 6c 6c | 65 64 20 74 6f 20 63 68 |ion call|ed to ch|
|000012f0| 61 6e 67 65 20 74 68 65 | 20 7a 6f 6f 6d 65 64 20 |ange the| zoomed |
|00001300| 73 74 61 74 65 20 6f 66 | 20 61 20 77 69 6e 64 6f |state of| a windo|
|00001310| 77 0d 0d 76 6f 69 64 20 | 43 57 69 6e 64 6f 77 3a |w..void |CWindow:|
|00001320| 3a 5a 6f 6f 6d 28 42 6f | 6f 6c 65 61 6e 20 7a 6f |:Zoom(Bo|olean zo|
|00001330| 6f 6d 4f 75 74 29 0d 7b | 0d 09 43 52 65 63 74 20 |omOut).{|..CRect |
|00001340| 6e 65 77 57 69 6e 64 6f | 77 52 65 63 74 3b 0d 09 |newWindo|wRect;..|
|00001350| 43 52 65 63 74 20 6d 6f | 6e 69 74 6f 72 52 65 63 |CRect mo|nitorRec|
|00001360| 74 3b 0d 09 0d 09 54 44 | 72 61 77 43 6f 6e 74 65 |t;....TD|rawConte|
|00001370| 78 74 20 64 72 61 77 43 | 6f 6e 74 65 78 74 28 47 |xt drawC|ontext(G|
|00001380| 65 74 47 72 61 66 50 74 | 72 28 29 29 3b 09 2f 2f |etGrafPt|r());.//|
|00001390| 20 5a 6f 6f 6d 57 69 6e | 64 6f 77 20 72 65 71 75 | ZoomWin|dow requ|
|000013a0| 69 72 65 73 20 74 68 65 | 20 70 6f 72 74 20 74 6f |ires the| port to|
|000013b0| 20 62 65 20 73 65 74 0d | 09 69 66 20 28 64 72 61 | be set.|.if (dra|
|000013c0| 77 43 6f 6e 74 65 78 74 | 2e 4c 6f 63 6b 28 29 29 |wContext|.Lock())|
|000013d0| 0d 09 7b 0d 09 09 7b 0d | 09 09 09 54 45 6e 76 69 |..{...{.|...TEnvi|
|000013e0| 72 6f 6e 6d 65 6e 74 20 | 65 6e 76 69 72 6f 6e 6d |ronment |environm|
|000013f0| 65 6e 74 3b 0d 09 09 09 | 65 6e 76 69 72 6f 6e 6d |ent;....|environm|
|00001400| 65 6e 74 2e 47 65 74 4d | 6f 6e 69 74 6f 72 52 65 |ent.GetM|onitorRe|
|00001410| 63 74 28 42 6f 75 6e 64 | 73 28 29 2c 20 6d 6f 6e |ct(Bound|s(), mon|
|00001420| 69 74 6f 72 52 65 63 74 | 29 3b 09 2f 2f 20 47 65 |itorRect|);.// Ge|
|00001430| 74 20 74 68 65 20 72 65 | 63 74 61 6e 67 6c 65 20 |t the re|ctangle |
|00001440| 6f 66 20 74 68 65 20 62 | 65 73 74 20 6d 6f 6e 69 |of the b|est moni|
|00001450| 74 6f 72 0d 09 09 7d 0d | 09 09 6d 6f 6e 69 74 6f |tor...}.|..monito|
|00001460| 72 52 65 63 74 2e 53 65 | 74 54 6f 70 28 6d 6f 6e |rRect.Se|tTop(mon|
|00001470| 69 74 6f 72 52 65 63 74 | 2e 54 6f 70 28 29 20 2b |itorRect|.Top() +|
|00001480| 20 28 4c 4d 47 65 74 4d | 42 61 72 48 65 69 67 68 | (LMGetM|BarHeigh|
|00001490| 74 28 29 20 2d 20 33 29 | 29 3b 09 2f 2f 20 4d 61 |t() - 3)|);.// Ma|
|000014a0| 6b 65 20 72 6f 6f 6d 20 | 66 6f 72 20 74 68 65 20 |ke room |for the |
|000014b0| 74 69 74 6c 65 20 62 61 | 72 20 28 61 73 73 75 6d |title ba|r (assum|
|000014c0| 69 6e 67 20 73 61 6d 65 | 20 61 73 20 6d 65 6e 75 |ing same| as menu|
|000014d0| 20 62 61 72 29 0d 09 09 | 6d 6f 6e 69 74 6f 72 52 | bar)...|monitorR|
|000014e0| 65 63 74 2e 49 6e 73 65 | 74 42 79 28 34 29 3b 09 |ect.Inse|tBy(4);.|
|000014f0| 09 09 09 2f 2f 20 47 69 | 76 65 20 73 6f 6d 65 20 |...// Gi|ve some |
|00001500| 65 64 67 65 20 74 6f 20 | 74 68 65 20 77 69 6e 64 |edge to |the wind|
|00001510| 6f 77 0d 0d 09 09 69 66 | 20 28 7a 6f 6f 6d 4f 75 |ow....if| (zoomOu|
|00001520| 74 29 0d 09 09 7b 0d 09 | 09 09 61 73 73 65 72 74 |t)...{..|..assert|
|00001530| 28 66 45 78 74 65 6e 74 | 2e 52 69 67 68 74 28 29 |(fExtent|.Right()|
|00001540| 20 3e 20 31 30 29 3b 0d | 09 09 09 61 73 73 65 72 | > 10);.|...asser|
|00001550| 74 28 66 45 78 74 65 6e | 74 2e 42 6f 74 74 6f 6d |t(fExten|t.Bottom|
|00001560| 28 29 20 3e 20 31 30 29 | 3b 0d 09 09 09 0d 09 09 |() > 10)|;.......|
|00001570| 09 2f 2f 20 43 61 6c 63 | 75 6c 61 74 65 20 77 68 |.// Calc|ulate wh|
|00001580| 65 72 65 20 74 68 65 20 | 6e 65 77 20 77 69 6e 64 |ere the |new wind|
|00001590| 6f 77 20 77 6f 75 6c 64 | 20 62 65 20 69 66 20 77 |ow would| be if w|
|000015a0| 65 20 64 69 64 6e 27 74 | 20 6d 6f 76 65 20 69 74 |e didn't| move it|
|000015b0| 0d 09 09 09 6e 65 77 57 | 69 6e 64 6f 77 52 65 63 |....newW|indowRec|
|000015c0| 74 20 3d 20 42 6f 75 6e | 64 73 28 29 3b 0d 09 09 |t = Boun|ds();...|
|000015d0| 09 6e 65 77 57 69 6e 64 | 6f 77 52 65 63 74 2e 53 |.newWind|owRect.S|
|000015e0| 65 74 57 69 64 74 68 28 | 66 45 78 74 65 6e 74 2e |etWidth(|fExtent.|
|000015f0| 52 69 67 68 74 28 29 29 | 3b 0d 09 09 09 6e 65 77 |Right())|;....new|
|00001600| 57 69 6e 64 6f 77 52 65 | 63 74 2e 53 65 74 48 65 |WindowRe|ct.SetHe|
|00001610| 69 67 68 74 28 66 45 78 | 74 65 6e 74 2e 42 6f 74 |ight(fEx|tent.Bot|
|00001620| 74 6f 6d 28 29 29 3b 0d | 0d 09 09 09 69 66 20 28 |tom());.|....if (|
|00001630| 21 6d 6f 6e 69 74 6f 72 | 52 65 63 74 2e 43 6f 6e |!monitor|Rect.Con|
|00001640| 74 61 69 6e 73 28 6e 65 | 77 57 69 6e 64 6f 77 52 |tains(ne|wWindowR|
|00001650| 65 63 74 29 29 0d 09 09 | 09 7b 0d 09 09 09 09 6e |ect))...|.{.....n|
|00001660| 65 77 57 69 6e 64 6f 77 | 52 65 63 74 2e 4f 66 66 |ewWindow|Rect.Off|
|00001670| 73 65 74 42 79 28 6d 6f | 6e 69 74 6f 72 52 65 63 |setBy(mo|nitorRec|
|00001680| 74 2e 4c 65 66 74 28 29 | 20 2d 20 6e 65 77 57 69 |t.Left()| - newWi|
|00001690| 6e 64 6f 77 52 65 63 74 | 2e 4c 65 66 74 28 29 2c |ndowRect|.Left(),|
|000016a0| 20 6d 6f 6e 69 74 6f 72 | 52 65 63 74 2e 54 6f 70 | monitor|Rect.Top|
|000016b0| 28 29 20 2d 20 6e 65 77 | 57 69 6e 64 6f 77 52 65 |() - new|WindowRe|
|000016c0| 63 74 2e 54 6f 70 28 29 | 29 3b 0d 09 09 09 09 6e |ct.Top()|);.....n|
|000016d0| 65 77 57 69 6e 64 6f 77 | 52 65 63 74 2e 53 65 74 |ewWindow|Rect.Set|
|000016e0| 52 69 67 68 74 28 6d 69 | 6e 28 6e 65 77 57 69 6e |Right(mi|n(newWin|
|000016f0| 64 6f 77 52 65 63 74 2e | 52 69 67 68 74 28 29 2c |dowRect.|Right(),|
|00001700| 20 6d 6f 6e 69 74 6f 72 | 52 65 63 74 2e 52 69 67 | monitor|Rect.Rig|
|00001710| 68 74 28 29 29 29 3b 0d | 09 09 09 09 6e 65 77 57 |ht()));.|....newW|
|00001720| 69 6e 64 6f 77 52 65 63 | 74 2e 53 65 74 42 6f 74 |indowRec|t.SetBot|
|00001730| 74 6f 6d 28 6d 69 6e 28 | 6e 65 77 57 69 6e 64 6f |tom(min(|newWindo|
|00001740| 77 52 65 63 74 2e 42 6f | 74 74 6f 6d 28 29 2c 20 |wRect.Bo|ttom(), |
|00001750| 6d 6f 6e 69 74 6f 72 52 | 65 63 74 2e 42 6f 74 74 |monitorR|ect.Bott|
|00001760| 6f 6d 28 29 29 29 3b 0d | 09 09 09 7d 0d 0d 09 09 |om()));.|...}....|
|00001770| 09 61 73 73 65 72 74 28 | 21 6e 65 77 57 69 6e 64 |.assert(|!newWind|
|00001780| 6f 77 52 65 63 74 2e 49 | 73 45 6d 70 74 79 28 29 |owRect.I|sEmpty()|
|00001790| 29 3b 0d 09 09 09 53 65 | 74 57 69 6e 64 6f 77 53 |);....Se|tWindowS|
|000017a0| 74 61 6e 64 61 72 64 53 | 74 61 74 65 28 66 57 69 |tandardS|tate(fWi|
|000017b0| 6e 64 6f 77 2c 20 6e 65 | 77 57 69 6e 64 6f 77 52 |ndow, ne|wWindowR|
|000017c0| 65 63 74 29 3b 09 2f 2f | 20 6e 65 77 20 7a 6f 6f |ect);.//| new zoo|
|000017d0| 6d 2d 6f 75 74 20 72 65 | 63 74 0d 09 09 7d 0d 09 |m-out re|ct...}..|
|000017e0| 09 65 6c 73 65 0d 09 09 | 7b 0d 09 09 09 2f 2f 20 |.else...|{....// |
|000017f0| 41 64 6a 75 73 74 20 74 | 68 65 20 75 73 65 72 20 |Adjust t|he user |
|00001800| 73 74 61 74 65 20 74 6f | 20 6d 69 6e 69 6d 69 7a |state to| minimiz|
|00001810| 65 20 6d 6f 76 69 6e 67 | 0d 09 09 09 47 65 74 57 |e moving|....GetW|
|00001820| 69 6e 64 6f 77 55 73 65 | 72 53 74 61 74 65 28 66 |indowUse|rState(f|
|00001830| 57 69 6e 64 6f 77 2c 20 | 6e 65 77 57 69 6e 64 6f |Window, |newWindo|
|00001840| 77 52 65 63 74 29 3b 0d | 0d 09 09 09 6e 65 77 57 |wRect);.|....newW|
|00001850| 69 6e 64 6f 77 52 65 63 | 74 2e 4f 66 66 73 65 74 |indowRec|t.Offset|
|00001860| 42 79 28 42 6f 75 6e 64 | 73 28 29 2e 4c 65 66 74 |By(Bound|s().Left|
|00001870| 28 29 20 2d 20 6e 65 77 | 57 69 6e 64 6f 77 52 65 |() - new|WindowRe|
|00001880| 63 74 2e 4c 65 66 74 28 | 29 2c 20 42 6f 75 6e 64 |ct.Left(|), Bound|
|00001890| 73 28 29 2e 54 6f 70 28 | 29 20 2d 20 6e 65 77 57 |s().Top(|) - newW|
|000018a0| 69 6e 64 6f 77 52 65 63 | 74 2e 54 6f 70 28 29 29 |indowRec|t.Top())|
|000018b0| 3b 0d 09 09 09 6e 65 77 | 57 69 6e 64 6f 77 52 65 |;....new|WindowRe|
|000018c0| 63 74 2e 53 65 74 52 69 | 67 68 74 28 6d 69 6e 28 |ct.SetRi|ght(min(|
|000018d0| 6e 65 77 57 69 6e 64 6f | 77 52 65 63 74 2e 52 69 |newWindo|wRect.Ri|
|000018e0| 67 68 74 28 29 2c 20 6d | 6f 6e 69 74 6f 72 52 65 |ght(), m|onitorRe|
|000018f0| 63 74 2e 52 69 67 68 74 | 28 29 29 29 3b 0d 09 09 |ct.Right|()));...|
|00001900| 09 6e 65 77 57 69 6e 64 | 6f 77 52 65 63 74 2e 53 |.newWind|owRect.S|
|00001910| 65 74 42 6f 74 74 6f 6d | 28 6d 69 6e 28 6e 65 77 |etBottom|(min(new|
|00001920| 57 69 6e 64 6f 77 52 65 | 63 74 2e 42 6f 74 74 6f |WindowRe|ct.Botto|
|00001930| 6d 28 29 2c 20 6d 6f 6e | 69 74 6f 72 52 65 63 74 |m(), mon|itorRect|
|00001940| 2e 42 6f 74 74 6f 6d 28 | 29 29 29 3b 0d 09 09 09 |.Bottom(|)));....|
|00001950| 53 65 74 57 69 6e 64 6f | 77 53 74 61 6e 64 61 72 |SetWindo|wStandar|
|00001960| 64 53 74 61 74 65 28 66 | 57 69 6e 64 6f 77 2c 20 |dState(f|Window, |
|00001970| 6e 65 77 57 69 6e 64 6f | 77 52 65 63 74 29 3b 0d |newWindo|wRect);.|
|00001980| 09 09 7d 0d 0d 09 09 43 | 6c 69 70 52 65 63 74 28 |..}....C|lipRect(|
|00001990| 42 6f 75 6e 64 73 28 29 | 29 3b 2f 2f 20 57 68 69 |Bounds()|);// Whi|
|000019a0| 74 65 20 6f 75 74 20 63 | 6f 6e 74 65 6e 74 73 20 |te out c|ontents |
|000019b0| 6f 66 20 77 69 6e 64 6f | 77 0d 09 09 45 72 61 73 |of windo|w...Eras|
|000019c0| 65 52 65 63 74 28 42 6f | 75 6e 64 73 28 29 29 3b |eRect(Bo|unds());|
|000019d0| 0d 09 09 5a 6f 6f 6d 57 | 69 6e 64 6f 77 28 66 57 |...ZoomW|indow(fW|
|000019e0| 69 6e 64 6f 77 2c 20 69 | 6e 5a 6f 6f 6d 4f 75 74 |indow, i|nZoomOut|
|000019f0| 2c 20 66 61 6c 73 65 29 | 3b 09 09 2f 2f 20 41 6c |, false)|;..// Al|
|00001a00| 77 61 79 73 20 7a 6f 6f | 6d 20 6f 6e 20 74 68 65 |ways zoo|m on the|
|00001a10| 20 73 74 64 53 74 61 74 | 65 0d 0d 09 09 49 6e 76 | stdStat|e....Inv|
|00001a20| 61 6c 52 65 63 74 28 42 | 6f 75 6e 64 73 28 29 29 |alRect(B|ounds())|
|00001a30| 3b 0d 09 09 64 72 61 77 | 43 6f 6e 74 65 78 74 2e |;...draw|Context.|
|00001a40| 55 6e 6c 6f 63 6b 28 29 | 3b 0d 09 7d 0d 7d 0d 0d |Unlock()|;..}.}..|
|00001a50| 0d 0d 2f 2f 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |..// ---|--------|
|00001a60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001a90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 2f 2f 20 4d 61 6b |--------|-.// Mak|
|00001aa0| 65 57 69 6e 64 6f 77 0d | 2f 2f 20 2d 2d 2d 2d 2d |eWindow.|// -----|
|00001ab0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ac0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ad0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ae0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 0d |--------|-------.|
|00001af0| 2f 2f 20 46 75 6e 63 74 | 69 6f 6e 20 63 61 6c 6c |// Funct|ion call|
|00001b00| 65 64 20 74 6f 20 63 6f | 6e 73 74 72 75 63 74 20 |ed to co|nstruct |
|00001b10| 61 20 54 6f 6f 6c 62 6f | 78 20 77 69 6e 64 6f 77 |a Toolbo|x window|
|00001b20| 20 66 6f 72 20 74 68 69 | 73 20 6f 62 6a 65 63 74 | for thi|s object|
|00001b30| 0d 2f 2f 20 43 61 6e 20 | 6f 6e 6c 79 20 62 65 20 |.// Can |only be |
|00001b40| 63 61 6c 6c 65 64 20 6f | 6e 63 65 2e 0d 0d 57 69 |called o|nce...Wi|
|00001b50| 6e 64 6f 77 52 65 66 20 | 43 57 69 6e 64 6f 77 3a |ndowRef |CWindow:|
|00001b60| 3a 4d 61 6b 65 57 69 6e | 64 6f 77 28 76 6f 69 64 |:MakeWin|dow(void|
|00001b70| 29 0d 7b 0d 09 61 73 73 | 65 72 74 28 47 65 74 57 |).{..ass|ert(GetW|
|00001b80| 69 6e 64 6f 77 52 65 66 | 28 29 20 3d 3d 20 4e 55 |indowRef|() == NU|
|00001b90| 4c 4c 29 3b 0d 09 57 69 | 6e 64 6f 77 52 65 66 20 |LL);..Wi|ndowRef |
|00001ba0| 61 4e 65 77 57 69 6e 64 | 6f 77 20 3d 20 47 65 74 |aNewWind|ow = Get|
|00001bb0| 4e 65 77 43 57 69 6e 64 | 6f 77 28 31 32 38 2c 20 |NewCWind|ow(128, |
|00001bc0| 4e 55 4c 4c 2c 20 57 69 | 6e 64 6f 77 52 65 66 28 |NULL, Wi|ndowRef(|
|00001bd0| 2d 31 29 29 3b 09 2f 2f | 20 28 2d 29 0d 09 0d 09 |-1));.//| (-)....|
|00001be0| 72 65 74 75 72 6e 20 61 | 4e 65 77 57 69 6e 64 6f |return a|NewWindo|
|00001bf0| 77 3b 0d 7d 0d 0d 0d 0d | 2f 2f 20 2d 2d 2d 2d 2d |w;.}....|// -----|
|00001c00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001c10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001c20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001c30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 0d |--------|-------.|
|00001c40| 2f 2f 20 53 68 6f 77 0d | 2f 2f 20 2d 2d 2d 2d 2d |// Show.|// -----|
|00001c50| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001c60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001c70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001c80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 0d |--------|-------.|
|00001c90| 2f 2f 20 46 75 6e 63 74 | 69 6f 6e 20 63 61 6c 6c |// Funct|ion call|
|00001ca0| 65 64 20 74 6f 20 73 68 | 6f 77 20 74 68 65 20 77 |ed to sh|ow the w|
|00001cb0| 69 6e 64 6f 77 20 69 66 | 20 69 74 20 77 61 73 20 |indow if| it was |
|00001cc0| 69 6e 76 69 73 69 62 6c | 65 0d 2f 2f 20 43 72 65 |invisibl|e.// Cre|
|00001cd0| 61 74 65 73 20 74 68 65 | 20 77 69 6e 64 6f 77 20 |ates the| window |
|00001ce0| 69 66 20 69 74 20 64 69 | 64 20 6e 6f 74 20 65 78 |if it di|d not ex|
|00001cf0| 69 73 74 0d 0d 76 6f 69 | 64 20 43 57 69 6e 64 6f |ist..voi|d CWindo|
|00001d00| 77 3a 3a 53 68 6f 77 28 | 76 6f 69 64 29 0d 7b 0d |w::Show(|void).{.|
|00001d10| 09 69 66 20 28 47 65 74 | 57 69 6e 64 6f 77 52 65 |.if (Get|WindowRe|
|00001d20| 66 28 29 20 3d 3d 20 4e | 55 4c 4c 29 0d 09 09 43 |f() == N|ULL)...C|
|00001d30| 72 65 61 74 65 57 69 6e | 64 6f 77 28 29 3b 0d 0d |reateWin|dow();..|
|00001d40| 09 3a 3a 53 68 6f 77 57 | 69 6e 64 6f 77 28 47 65 |.::ShowW|indow(Ge|
|00001d50| 74 57 69 6e 64 6f 77 52 | 65 66 28 29 29 3b 0d 7d |tWindowR|ef());.}|
|00001d60| 0d 0d 0d 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |....// -|--------|
|00001d70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001d80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001d90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001da0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 48 |--------|---.// H|
|00001db0| 69 64 65 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |ide.// -|--------|
|00001dc0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001dd0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001de0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001df0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 46 |--------|---.// F|
|00001e00| 75 6e 63 74 69 6f 6e 20 | 63 61 6c 6c 65 64 20 74 |unction |called t|
|00001e10| 6f 20 68 69 64 65 20 74 | 68 65 20 77 69 6e 64 6f |o hide t|he windo|
|00001e20| 77 0d 2f 2f 20 54 68 65 | 20 77 69 6e 64 6f 77 20 |w.// The| window |
|00001e30| 6d 75 73 74 20 68 61 76 | 65 20 62 65 65 6e 20 63 |must hav|e been c|
|00001e40| 72 65 61 74 65 20 70 72 | 65 76 69 6f 75 73 6c 74 |reate pr|eviouslt|
|00001e50| 0d 0d 76 6f 69 64 20 43 | 57 69 6e 64 6f 77 3a 3a |..void C|Window::|
|00001e60| 48 69 64 65 28 76 6f 69 | 64 29 0d 7b 0d 09 61 73 |Hide(voi|d).{..as|
|00001e70| 73 65 72 74 28 47 65 74 | 57 69 6e 64 6f 77 52 65 |sert(Get|WindowRe|
|00001e80| 66 28 29 20 21 3d 20 4e | 55 4c 4c 29 3b 0d 09 3a |f() != N|ULL);..:|
|00001e90| 3a 48 69 64 65 57 69 6e | 64 6f 77 28 47 65 74 57 |:HideWin|dow(GetW|
|00001ea0| 69 6e 64 6f 77 52 65 66 | 28 29 29 3b 0d 7d 0d 0d |indowRef|());.}..|
|00001eb0| 0d 0d 2f 2f 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |..// ---|--------|
|00001ec0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ed0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ee0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001ef0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 0d 2f 2f 20 46 69 6c |--------|-.// Fil|
|00001f00| 74 65 72 45 76 65 6e 74 | 0d 2f 2f 20 2d 2d 2d 2d |terEvent|.// ----|
|00001f10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f20| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f30| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f40| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00001f50| 0d 2f 2f 20 48 6f 6f 6b | 20 66 75 6e 63 74 69 6f |.// Hook| functio|
|00001f60| 6e 63 20 63 61 6c 6c 65 | 64 20 62 65 66 6f 72 65 |nc calle|d before|
|00001f70| 20 61 6e 20 65 76 65 6e | 74 20 67 65 74 73 20 70 | an even|t gets p|
|00001f80| 72 6f 63 65 73 73 65 64 | 0d 2f 2f 20 52 65 74 75 |rocessed|.// Retu|
|00001f90| 72 6e 73 20 74 72 75 65 | 20 69 66 20 74 68 65 20 |rns true| if the |
|00001fa0| 65 76 65 6e 74 20 77 61 | 73 20 68 61 6e 64 6c 65 |event wa|s handle|
|00001fb0| 64 2e 0d 2f 2f 20 49 74 | 20 63 61 6c 6c 73 20 46 |d..// It| calls F|
|00001fc0| 69 6c 74 65 72 4b 65 79 | 0d 0d 42 6f 6f 6c 65 61 |ilterKey|..Boolea|
|00001fd0| 6e 20 43 57 69 6e 64 6f | 77 3a 3a 46 69 6c 74 65 |n CWindo|w::Filte|
|00001fe0| 72 45 76 65 6e 74 28 63 | 6f 6e 73 74 20 45 76 65 |rEvent(c|onst Eve|
|00001ff0| 6e 74 52 65 63 6f 72 64 | 26 20 65 76 65 6e 74 29 |ntRecord|& event)|
|00002000| 0d 7b 0d 09 42 6f 6f 6c | 65 61 6e 20 72 65 73 75 |.{..Bool|ean resu|
|00002010| 6c 74 20 3d 20 66 61 6c | 73 65 3b 09 2f 2f 20 45 |lt = fal|se;.// E|
|00002020| 76 65 6e 74 20 6e 6f 74 | 20 68 61 6e 64 6c 65 64 |vent not| handled|
|00002030| 0d 09 0d 09 69 66 20 28 | 65 76 65 6e 74 2e 77 68 |....if (|event.wh|
|00002040| 61 74 20 3d 3d 20 6b 65 | 79 44 6f 77 6e 20 7c 7c |at == ke|yDown |||
|00002050| 20 65 76 65 6e 74 2e 77 | 68 61 74 20 3d 3d 20 61 | event.w|hat == a|
|00002060| 75 74 6f 4b 65 79 29 0d | 09 7b 0d 09 09 55 49 6e |utoKey).|.{...UIn|
|00002070| 74 31 36 20 6b 65 79 3b | 0d 09 09 55 49 6e 74 31 |t16 key;|...UInt1|
|00002080| 36 20 6b 65 79 43 6f 64 | 65 20 3d 20 65 76 65 6e |6 keyCod|e = even|
|00002090| 74 2e 6d 65 73 73 61 67 | 65 20 26 20 6b 65 79 43 |t.messag|e & keyC|
|000020a0| 6f 64 65 4d 61 73 6b 3b | 3b 0d 09 09 55 49 6e 74 |odeMask;|;...UInt|
|000020b0| 31 36 20 6b 65 79 41 53 | 43 49 49 20 3d 20 65 76 |16 keyAS|CII = ev|
|000020c0| 65 6e 74 2e 6d 65 73 73 | 61 67 65 20 26 20 63 68 |ent.mess|age & ch|
|000020d0| 61 72 43 6f 64 65 4d 61 | 73 6b 3b 0d 09 09 0d 09 |arCodeMa|sk;.....|
|000020e0| 09 69 66 20 28 6b 65 79 | 41 53 43 49 49 20 3d 3d |.if (key|ASCII ==|
|000020f0| 20 30 78 31 30 29 0d 09 | 09 7b 0d 09 09 09 2f 2f | 0x10)..|.{....//|
|00002100| 20 49 74 27 73 20 61 20 | 66 75 6e 63 74 69 6f 6e | It's a |function|
|00002110| 20 6b 65 79 0d 09 09 09 | 6b 65 79 20 3d 20 6b 65 | key....|key = ke|
|00002120| 79 43 6f 64 65 3b 0d 09 | 09 7d 0d 09 09 65 6c 73 |yCode;..|.}...els|
|00002130| 65 20 69 66 20 28 6b 65 | 79 43 6f 64 65 20 3d 3d |e if (ke|yCode ==|
|00002140| 20 30 78 30 31 29 0d 09 | 09 7b 0d 09 09 09 2f 2f | 0x01)..|.{....//|
|00002150| 20 54 68 65 20 45 53 43 | 20 61 6e 64 20 43 6c 65 | The ESC| and Cle|
|00002160| 61 72 20 6b 65 79 73 20 | 72 65 74 75 72 6e 20 74 |ar keys |return t|
|00002170| 68 65 20 73 61 6d 65 20 | 41 53 43 49 49 20 63 6f |he same |ASCII co|
|00002180| 64 65 0d 09 09 09 2f 2f | 20 54 6f 20 64 69 66 66 |de....//| To diff|
|00002190| 65 72 65 6e 74 69 61 74 | 65 20 74 68 65 6d 2c 20 |erentiat|e them, |
|000021a0| 77 65 20 6e 65 65 64 20 | 74 6f 20 6c 6f 6f 6b 20 |we need |to look |
|000021b0| 61 74 20 74 68 65 20 6b | 65 79 63 6f 64 65 0d 09 |at the k|eycode..|
|000021c0| 09 09 2f 2f 20 61 73 20 | 77 65 6c 6c 2e 20 49 66 |..// as |well. If|
|000021d0| 20 69 74 27 73 20 31 2c | 20 69 74 27 73 20 74 68 | it's 1,| it's th|
|000021e0| 65 20 45 53 43 20 6b 65 | 79 2e 0d 09 09 09 6b 65 |e ESC ke|y.....ke|
|000021f0| 79 20 3d 20 6b 65 79 45 | 73 63 61 70 65 3b 0d 09 |y = keyE|scape;..|
|00002200| 09 7d 0d 09 09 65 6c 73 | 65 0d 09 09 7b 0d 09 09 |.}...els|e...{...|
|00002210| 09 6b 65 79 20 3d 20 6b | 65 79 41 53 43 49 49 3b |.key = k|eyASCII;|
|00002220| 0d 09 09 7d 0d 09 09 72 | 65 73 75 6c 74 20 3d 20 |...}...r|esult = |
|00002230| 46 69 6c 74 65 72 4b 65 | 79 28 65 76 65 6e 74 2c |FilterKe|y(event,|
|00002240| 20 6b 65 79 29 3b 0d 09 | 7d 0d 09 72 65 74 75 72 | key);..|}..retur|
|00002250| 6e 20 72 65 73 75 6c 74 | 3b 09 0d 7d 0d 0d 0d 0d |n result|;..}....|
|00002260| 2f 2f 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |// -----|--------|
|00002270| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002280| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002290| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000022a0| 2d 2d 2d 2d 2d 2d 2d 0d | 2f 2f 20 4d 6f 75 73 65 |-------.|// Mouse|
|000022b0| 44 6f 77 6e 0d 2f 2f 20 | 2d 2d 2d 2d 2d 2d 2d 2d |Down.// |--------|
|000022c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000022d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000022e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000022f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 0d 2f 2f 20 |--------|----.// |
|00002300| 48 6f 6f 6b 20 66 75 6e | 63 74 69 6f 6e 20 63 61 |Hook fun|ction ca|
|00002310| 6c 6c 65 64 20 77 68 65 | 6e 20 74 68 65 20 63 6f |lled whe|n the co|
|00002320| 6e 74 65 6e 74 20 6f 66 | 20 74 68 65 20 77 69 6e |ntent of| the win|
|00002330| 64 6f 77 20 68 61 73 20 | 62 65 65 6e 20 63 6c 69 |dow has |been cli|
|00002340| 63 6b 65 64 0d 0d 76 6f | 69 64 20 43 57 69 6e 64 |cked..vo|id CWind|
|00002350| 6f 77 3a 3a 4d 6f 75 73 | 65 44 6f 77 6e 28 63 6f |ow::Mous|eDown(co|
|00002360| 6e 73 74 20 45 76 65 6e | 74 52 65 63 6f 72 64 26 |nst Even|tRecord&|
|00002370| 20 65 76 65 6e 74 29 0d | 7b 0d 23 70 72 61 67 6d | event).|{.#pragm|
|00002380| 61 20 75 6e 75 73 65 64 | 28 65 76 65 6e 74 29 0d |a unused|(event).|
|00002390| 7d 0d 0d 0d 0d 2f 2f 20 | 2d 2d 2d 2d 2d 2d 2d 2d |}....// |--------|
|000023a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000023b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000023c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000023d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 0d 2f 2f 20 |--------|----.// |
|000023e0| 46 69 6c 74 65 72 4b 65 | 79 0d 2f 2f 20 2d 2d 2d |FilterKe|y.// ---|
|000023f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002400| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002410| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002420| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002430| 2d 0d 2f 2f 20 43 6f 6e | 73 74 72 75 63 74 6f 72 |-.// Con|structor|
|00002440| 0d 0d 42 6f 6f 6c 65 61 | 6e 20 43 57 69 6e 64 6f |..Boolea|n CWindo|
|00002450| 77 3a 3a 46 69 6c 74 65 | 72 4b 65 79 28 63 6f 6e |w::Filte|rKey(con|
|00002460| 73 74 20 45 76 65 6e 74 | 52 65 63 6f 72 64 26 20 |st Event|Record& |
|00002470| 65 76 65 6e 74 2c 20 55 | 49 6e 74 31 36 20 6b 65 |event, U|Int16 ke|
|00002480| 79 29 0d 2f 2f 20 48 6f | 6f 6b 20 66 75 6e 63 74 |y).// Ho|ok funct|
|00002490| 69 6f 6e 20 63 61 6c 6c | 65 64 20 62 65 66 6f 72 |ion call|ed befor|
|000024a0| 65 20 6b 65 79 20 65 76 | 65 6e 74 73 20 61 72 65 |e key ev|ents are|
|000024b0| 20 70 72 6f 63 65 73 73 | 65 64 0d 2f 2f 20 52 65 | process|ed.// Re|
|000024c0| 74 75 72 6e 73 20 74 72 | 75 65 20 69 66 20 74 68 |turns tr|ue if th|
|000024d0| 65 20 65 76 65 6e 74 20 | 77 61 73 20 68 61 6e 64 |e event |was hand|
|000024e0| 6c 65 64 2e 0d 7b 0d 23 | 70 72 61 67 6d 61 20 75 |led..{.#|pragma u|
|000024f0| 6e 75 73 65 64 28 65 76 | 65 6e 74 29 0d 23 70 72 |nused(ev|ent).#pr|
|00002500| 61 67 6d 61 20 75 6e 75 | 73 65 64 28 6b 65 79 29 |agma unu|sed(key)|
|00002510| 0d 09 72 65 74 75 72 6e | 20 66 61 6c 73 65 3b 09 |..return| false;.|
|00002520| 2f 2f 20 45 76 65 6e 74 | 20 6e 6f 74 20 68 61 6e |// Event| not han|
|00002530| 64 6c 65 64 0d 7d 0d 0d | 0d 0d 2f 2f 20 2d 2d 2d |dled.}..|..// ---|
|00002540| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002550| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002560| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002570| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002580| 2d 0d 2f 2f 20 4d 6f 76 | 65 54 6f 0d 2f 2f 20 2d |-.// Mov|eTo.// -|
|00002590| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000025a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000025b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000025c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000025d0| 2d 2d 2d 0d 2f 2f 20 46 | 75 6e 63 74 69 6f 6e 20 |---.// F|unction |
|000025e0| 74 6f 20 63 68 61 6e 67 | 65 20 74 68 65 20 6c 6f |to chang|e the lo|
|000025f0| 63 61 74 69 6f 6e 20 6f | 66 20 74 68 65 20 77 69 |cation o|f the wi|
|00002600| 6e 64 6f 77 0d 0d 76 6f | 69 64 20 43 57 69 6e 64 |ndow..vo|id CWind|
|00002610| 6f 77 3a 3a 4d 6f 76 65 | 54 6f 28 63 6f 6e 73 74 |ow::Move|To(const|
|00002620| 20 43 50 6f 69 6e 74 26 | 20 6c 6f 63 61 74 69 6f | CPoint&| locatio|
|00002630| 6e 29 0d 7b 0d 09 61 73 | 73 65 72 74 28 47 65 74 |n).{..as|sert(Get|
|00002640| 57 69 6e 64 6f 77 52 65 | 66 28 29 20 21 3d 20 4e |WindowRe|f() != N|
|00002650| 55 4c 4c 29 3b 0d 09 0d | 09 4d 6f 76 65 57 69 6e |ULL);...|.MoveWin|
|00002660| 64 6f 77 28 47 65 74 57 | 69 6e 64 6f 77 52 65 66 |dow(GetW|indowRef|
|00002670| 28 29 2c 20 6c 6f 63 61 | 74 69 6f 6e 2e 58 28 29 |(), loca|tion.X()|
|00002680| 2c 20 6c 6f 63 61 74 69 | 6f 6e 2e 59 28 29 2c 20 |, locati|on.Y(), |
|00002690| 66 61 6c 73 65 29 3b 0d | 09 0d 09 46 72 61 6d 65 |false);.|...Frame|
|000026a0| 4d 6f 76 65 64 28 6c 6f | 63 61 74 69 6f 6e 29 3b |Moved(lo|cation);|
|000026b0| 0d 7d 0d 0d 0d 0d 2f 2f | 20 2d 2d 2d 2d 2d 2d 2d |.}....//| -------|
|000026c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000026d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000026e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000026f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0d 2f 2f |--------|-----.//|
|00002700| 20 46 72 61 6d 65 52 65 | 73 69 7a 65 64 0d 2f 2f | FrameRe|sized.//|
|00002710| 20 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -------|--------|
|00002720| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002730| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002740| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002750| 2d 2d 2d 2d 2d 0d 2f 2f | 20 48 6f 6f 6b 20 66 75 |-----.//| Hook fu|
|00002760| 6e 63 74 69 6f 6e 20 63 | 61 6c 6c 65 64 20 77 68 |nction c|alled wh|
|00002770| 65 6e 20 74 68 65 20 77 | 69 6e 64 6f 77 20 68 61 |en the w|indow ha|
|00002780| 73 20 62 65 65 6e 20 72 | 65 73 69 7a 65 64 0d 0d |s been r|esized..|
|00002790| 76 6f 69 64 20 43 57 69 | 6e 64 6f 77 3a 3a 46 72 |void CWi|ndow::Fr|
|000027a0| 61 6d 65 52 65 73 69 7a | 65 64 28 47 72 61 70 68 |ameResiz|ed(Graph|
|000027b0| 69 63 61 6c 55 6e 69 74 | 20 6e 65 77 57 69 64 74 |icalUnit| newWidt|
|000027c0| 68 2c 20 47 72 61 70 68 | 69 63 61 6c 55 6e 69 74 |h, Graph|icalUnit|
|000027d0| 20 6e 65 77 48 65 69 67 | 68 74 29 0d 7b 0d 23 70 | newHeig|ht).{.#p|
|000027e0| 72 61 67 6d 61 20 75 6e | 75 73 65 64 28 6e 65 77 |ragma un|used(new|
|000027f0| 57 69 64 74 68 2c 20 6e | 65 77 48 65 69 67 68 74 |Width, n|ewHeight|
|00002800| 29 0d 7d 0d 0d 0d 0d 2f | 2f 20 2d 2d 2d 2d 2d 2d |).}..../|/ ------|
|00002810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002820| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002840| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0d 2f |--------|------./|
|00002850| 2f 20 46 72 61 6d 65 4d | 6f 76 65 64 0d 2f 2f 20 |/ FrameM|oved.// |
|00002860| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002870| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002880| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000028a0| 2d 2d 2d 2d 0d 2f 2f 20 | 48 6f 6f 6b 20 66 75 6e |----.// |Hook fun|
|000028b0| 63 74 69 6f 6e 20 63 61 | 6c 6c 65 64 20 77 68 65 |ction ca|lled whe|
|000028c0| 6e 20 74 68 65 20 77 69 | 6e 64 6f 77 20 6c 6f 63 |n the wi|ndow loc|
|000028d0| 61 74 69 6f 6e 20 68 61 | 73 20 63 68 61 6e 67 65 |ation ha|s change|
|000028e0| 64 0d 0d 76 6f 69 64 20 | 43 57 69 6e 64 6f 77 3a |d..void |CWindow:|
|000028f0| 3a 46 72 61 6d 65 4d 6f | 76 65 64 28 63 6f 6e 73 |:FrameMo|ved(cons|
|00002900| 74 20 43 50 6f 69 6e 74 | 26 20 6e 65 77 4c 6f 63 |t CPoint|& newLoc|
|00002910| 61 74 69 6f 6e 29 0d 7b | 0d 23 70 72 61 67 6d 61 |ation).{|.#pragma|
|00002920| 20 75 6e 75 73 65 64 28 | 6e 65 77 4c 6f 63 61 74 | unused(|newLocat|
|00002930| 69 6f 6e 29 0d 0d 7d 0d | 0d 0d 0d 2f 2f 20 2d 2d |ion)..}.|...// --|
|00002940| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002950| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002960| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002970| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002980| 2d 2d 0d 2f 2f 20 46 6f | 72 63 65 4f 6e 53 63 72 |--.// Fo|rceOnScr|
|00002990| 65 65 6e 0d 2f 2f 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |een.// -|--------|
|000029a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000029b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000029c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000029d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 0d 2f 2f 20 46 |--------|---.// F|
|000029e0| 75 6e 63 74 69 6f 6e 20 | 74 68 61 74 20 65 6e 73 |unction |that ens|
|000029f0| 75 72 65 73 20 74 68 61 | 74 20 74 68 65 20 77 69 |ures tha|t the wi|
|00002a00| 6e 64 6f 77 20 69 73 20 | 76 69 73 69 62 6c 65 20 |ndow is |visible |
|00002a10| 6f 6e 20 73 63 72 65 65 | 6e 0d 0d 76 6f 69 64 20 |on scree|n..void |
|00002a20| 43 57 69 6e 64 6f 77 3a | 3a 46 6f 72 63 65 4f 6e |CWindow:|:ForceOn|
|00002a30| 53 63 72 65 65 6e 28 76 | 6f 69 64 29 0d 7b 0d 23 |Screen(v|oid).{.#|
|00002a40| 69 66 20 31 0d 09 65 6e | 75 6d 20 7b 20 6b 4d 69 |if 1..en|um { kMi|
|00002a50| 6e 44 72 61 67 41 72 65 | 61 20 3d 20 34 20 7d 3b |nDragAre|a = 4 };|
|00002a60| 0d 0d 09 43 54 65 6d 70 | 52 67 6e 20 74 68 65 44 |...CTemp|Rgn theD|
|00002a70| 72 61 67 52 67 6e 3b 0d | 09 57 69 6e 64 6f 77 52 |ragRgn;.|.WindowR|
|00002a80| 65 63 6f 72 64 20 26 20 | 74 68 65 57 69 6e 64 6f |ecord & |theWindo|
|00002a90| 77 52 65 63 6f 72 64 20 | 3d 20 2a 28 28 57 69 6e |wRecord |= *((Win|
|00002aa0| 64 6f 77 50 65 65 6b 29 | 47 65 74 57 69 6e 64 6f |dowPeek)|GetWindo|
|00002ab0| 77 52 65 66 28 29 29 3b | 0d 09 44 69 66 66 52 67 |wRef());|..DiffRg|
|00002ac0| 6e 28 74 68 65 57 69 6e | 64 6f 77 52 65 63 6f 72 |n(theWin|dowRecor|
|00002ad0| 64 2e 73 74 72 75 63 52 | 67 6e 2c 20 74 68 65 57 |d.strucR|gn, theW|
|00002ae0| 69 6e 64 6f 77 52 65 63 | 6f 72 64 2e 63 6f 6e 74 |indowRec|ord.cont|
|00002af0| 52 67 6e 2c 20 74 68 65 | 44 72 61 67 52 67 6e 29 |Rgn, the|DragRgn)|
|00002b00| 3b 2f 2f 20 73 74 72 75 | 63 52 67 6e 20 6c 65 73 |;// stru|cRgn les|
|00002b10| 73 20 63 6f 6e 74 52 67 | 6e 20 c5 c5 20 64 72 61 |s contRg|n .. dra|
|00002b20| 67 20 72 67 6e 0d 09 69 | 66 20 28 45 6d 70 74 79 |g rgn..i|f (Empty|
|00002b30| 52 67 6e 28 74 68 65 44 | 72 61 67 52 67 6e 29 29 |Rgn(theD|ragRgn))|
|00002b40| 0d 09 09 43 6f 70 79 52 | 67 6e 28 74 68 65 57 69 |...CopyR|gn(theWi|
|00002b50| 6e 64 6f 77 52 65 63 6f | 72 64 2e 73 74 72 75 63 |ndowReco|rd.struc|
|00002b60| 52 67 6e 2c 20 74 68 65 | 44 72 61 67 52 67 6e 29 |Rgn, the|DragRgn)|
|00002b70| 3b 2f 2f 20 61 74 20 6c | 65 61 73 74 20 67 65 74 |;// at l|east get|
|00002b80| 20 74 68 65 20 73 74 72 | 75 63 52 67 6e 20 0d 0d | the str|ucRgn ..|
|00002b90| 09 43 50 6f 69 6e 74 20 | 63 6f 6e 74 65 6e 74 52 |.CPoint |contentR|
|00002ba0| 65 67 69 6f 6e 49 6e 73 | 65 74 20 3d 20 43 50 6f |egionIns|et = CPo|
|00002bb0| 69 6e 74 28 28 2a 74 68 | 65 57 69 6e 64 6f 77 52 |int((*th|eWindowR|
|00002bc0| 65 63 6f 72 64 2e 63 6f | 6e 74 52 67 6e 29 2d 3e |ecord.co|ntRgn)->|
|00002bd0| 72 67 6e 42 42 6f 78 2e | 6c 65 66 74 2c 20 28 2a |rgnBBox.|left, (*|
|00002be0| 74 68 65 57 69 6e 64 6f | 77 52 65 63 6f 72 64 2e |theWindo|wRecord.|
|00002bf0| 63 6f 6e 74 52 67 6e 29 | 2d 3e 72 67 6e 42 42 6f |contRgn)|->rgnBBo|
|00002c00| 78 2e 74 6f 70 29 0d 09 | 09 09 09 09 09 09 09 2d |x.top)..|.......-|
|00002c10| 20 43 50 6f 69 6e 74 28 | 28 2a 74 68 65 57 69 6e | CPoint(|(*theWin|
|00002c20| 64 6f 77 52 65 63 6f 72 | 64 2e 73 74 72 75 63 52 |dowRecor|d.strucR|
|00002c30| 67 6e 29 2d 3e 72 67 6e | 42 42 6f 78 2e 6c 65 66 |gn)->rgn|BBox.lef|
|00002c40| 74 2c 20 28 2a 74 68 65 | 57 69 6e 64 6f 77 52 65 |t, (*the|WindowRe|
|00002c50| 63 6f 72 64 2e 73 74 72 | 75 63 52 67 6e 29 2d 3e |cord.str|ucRgn)->|
|00002c60| 72 67 6e 42 42 6f 78 2e | 74 6f 70 29 3b 0d 0d 09 |rgnBBox.|top);...|
|00002c70| 2f 2f 20 67 65 74 20 74 | 68 65 20 64 65 73 6b 74 |// get t|he deskt|
|00002c80| 6f 70 20 72 67 6e 2c 20 | 69 6e 73 65 74 20 62 79 |op rgn, |inset by|
|00002c90| 20 61 20 6d 69 6e 69 6d | 61 6c 20 64 72 61 67 20 | a minim|al drag |
|00002ca0| 61 72 65 61 20 0d 09 43 | 54 65 6d 70 52 67 6e 20 |area ..C|TempRgn |
|00002cb0| 74 68 65 53 65 63 74 52 | 67 6e 28 4c 4d 47 65 74 |theSectR|gn(LMGet|
|00002cc0| 47 72 61 79 52 67 6e 28 | 29 29 3b 0d 09 49 6e 73 |GrayRgn(|));..Ins|
|00002cd0| 65 74 52 67 6e 28 74 68 | 65 53 65 63 74 52 67 6e |etRgn(th|eSectRgn|
|00002ce0| 2c 20 6b 4d 69 6e 44 72 | 61 67 41 72 65 61 2c 20 |, kMinDr|agArea, |
|00002cf0| 6b 4d 69 6e 44 72 61 67 | 41 72 65 61 29 3b 09 2f |kMinDrag|Area);./|
|00002d00| 2f 20 69 6e 73 65 74 20 | 74 68 65 53 65 63 74 52 |/ inset |theSectR|
|00002d10| 67 6e 20 0d 09 53 65 63 | 74 52 67 6e 28 74 68 65 |gn ..Sec|tRgn(the|
|00002d20| 44 72 61 67 52 67 6e 2c | 20 74 68 65 53 65 63 74 |DragRgn,| theSect|
|00002d30| 52 67 6e 2c 20 74 68 65 | 53 65 63 74 52 67 6e 29 |Rgn, the|SectRgn)|
|00002d40| 3b 09 09 2f 2f 20 64 6f | 20 64 72 61 67 20 72 67 |;..// do| drag rg|
|00002d50| 6e 20 26 26 20 64 65 73 | 6b 74 6f 70 20 72 67 6e |n && des|ktop rgn|
|00002d60| 20 69 6e 73 74 65 72 73 | 65 63 74 20 3f 20 0d 0d | insters|ect ? ..|
|00002d70| 09 69 66 20 28 45 6d 70 | 74 79 52 67 6e 28 74 68 |.if (Emp|tyRgn(th|
|00002d80| 65 53 65 63 74 52 67 6e | 29 29 0d 09 7b 0d 09 09 |eSectRgn|))..{...|
|00002d90| 47 72 61 70 68 69 63 61 | 6c 55 6e 69 74 20 64 65 |Graphica|lUnit de|
|00002da0| 6c 74 61 58 3b 0d 09 09 | 47 72 61 70 68 69 63 61 |ltaX;...|Graphica|
|00002db0| 6c 55 6e 69 74 20 64 65 | 6c 74 61 59 3b 0d 09 09 |lUnit de|ltaY;...|
|00002dc0| 43 52 65 63 74 20 76 69 | 73 53 63 72 65 65 6e 52 |CRect vi|sScreenR|
|00002dd0| 65 63 74 3b 0d 09 09 43 | 52 65 63 74 20 74 68 65 |ect;...C|Rect the|
|00002de0| 46 72 61 6d 65 28 47 65 | 74 57 69 6e 64 6f 77 52 |Frame(Ge|tWindowR|
|00002df0| 65 66 28 29 2d 3e 70 6f | 72 74 52 65 63 74 29 3b |ef()->po|rtRect);|
|00002e00| 0d 0d 09 09 2f 2f 20 73 | 69 6e 63 65 20 77 65 20 |....// s|ince we |
|00002e10| 64 6f 6e 27 74 20 5f 72 | 65 61 6c 6c 79 5f 20 6b |don't _r|eally_ k|
|00002e20| 6e 6f 77 20 77 68 61 74 | 20 74 68 65 20 64 72 61 |now what| the dra|
|00002e30| 67 20 72 67 6e 20 69 73 | 2c 20 77 65 27 6c 6c 20 |g rgn is|, we'll |
|00002e40| 61 73 73 75 6d 65 20 74 | 68 61 74 20 6d 6f 76 69 |assume t|hat movi|
|00002e50| 6e 67 20 74 68 65 0d 09 | 09 2f 2f 20 74 6f 70 6c |ng the..|.// topl|
|00002e60| 65 66 74 20 70 74 20 6f | 66 20 74 68 65 20 77 69 |eft pt o|f the wi|
|00002e70| 6e 64 6f 77 20 6f 6e 20 | 73 63 72 65 65 6e 20 69 |ndow on |screen i|
|00002e80| 73 20 73 75 66 66 69 63 | 69 65 6e 74 20 74 6f 20 |s suffic|ient to |
|00002e90| 6d 61 6b 65 20 69 74 20 | 64 72 61 67 67 61 62 6c |make it |draggabl|
|00002ea0| 65 2c 20 73 6f 20 63 61 | 6c 63 75 6c 61 74 65 0d |e, so ca|lculate.|
|00002eb0| 09 09 2f 2f 20 74 68 65 | 20 64 65 6c 74 61 73 20 |..// the| deltas |
|00002ec0| 6e 65 63 65 73 73 61 72 | 79 20 74 6f 20 6d 6f 76 |necessar|y to mov|
|00002ed0| 65 20 74 68 65 20 74 6f | 70 6c 65 66 74 20 70 74 |e the to|pleft pt|
|00002ee0| 20 69 6e 74 6f 20 76 69 | 73 69 62 6c 65 20 73 63 | into vi|sible sc|
|00002ef0| 72 65 65 6e 20 43 52 65 | 63 74 2e 0d 09 0d 09 09 |reen CRe|ct......|
|00002f00| 74 68 69 73 2d 3e 47 65 | 74 4d 61 78 49 6e 74 65 |this->Ge|tMaxInte|
|00002f10| 72 73 65 63 74 65 64 44 | 65 76 69 63 65 28 76 69 |rsectedD|evice(vi|
|00002f20| 73 53 63 72 65 65 6e 52 | 65 63 74 29 3b 0d 09 09 |sScreenR|ect);...|
|00002f30| 76 69 73 53 63 72 65 65 | 6e 52 65 63 74 2e 49 6e |visScree|nRect.In|
|00002f40| 73 65 74 42 79 28 6b 4d | 69 6e 44 72 61 67 41 72 |setBy(kM|inDragAr|
|00002f50| 65 61 29 3b 0d 09 0d 09 | 09 69 66 20 28 74 68 65 |ea);....|.if (the|
|00002f60| 46 72 61 6d 65 2e 54 6f | 70 28 29 20 3c 20 76 69 |Frame.To|p() < vi|
|00002f70| 73 53 63 72 65 65 6e 52 | 65 63 74 2e 54 6f 70 28 |sScreenR|ect.Top(|
|00002f80| 29 29 0d 09 09 09 64 65 | 6c 74 61 59 20 3d 20 28 |))....de|ltaY = (|
|00002f90| 76 69 73 53 63 72 65 65 | 6e 52 65 63 74 2e 54 6f |visScree|nRect.To|
|00002fa0| 70 28 29 20 2d 20 74 68 | 65 46 72 61 6d 65 2e 54 |p() - th|eFrame.T|
|00002fb0| 6f 70 28 29 20 2b 20 63 | 6f 6e 74 65 6e 74 52 65 |op() + c|ontentRe|
|00002fc0| 67 69 6f 6e 49 6e 73 65 | 74 2e 59 28 29 29 3b 0d |gionInse|t.Y());.|
|00002fd0| 09 09 65 6c 73 65 20 69 | 66 20 28 74 68 65 46 72 |..else i|f (theFr|
|00002fe0| 61 6d 65 2e 54 6f 70 28 | 29 20 3e 20 76 69 73 53 |ame.Top(|) > visS|
|00002ff0| 63 72 65 65 6e 52 65 63 | 74 2e 42 6f 74 74 6f 6d |creenRec|t.Bottom|
|00003000| 28 29 29 0d 09 09 09 64 | 65 6c 74 61 59 20 3d 20 |())....d|eltaY = |
|00003010| 28 76 69 73 53 63 72 65 | 65 6e 52 65 63 74 2e 42 |(visScre|enRect.B|
|00003020| 6f 74 74 6f 6d 28 29 20 | 2d 20 74 68 65 46 72 61 |ottom() |- theFra|
|00003030| 6d 65 2e 54 6f 70 28 29 | 20 2d 20 63 6f 6e 74 65 |me.Top()| - conte|
|00003040| 6e 74 52 65 67 69 6f 6e | 49 6e 73 65 74 2e 59 28 |ntRegion|Inset.Y(|
|00003050| 29 29 3b 0d 09 0d 09 09 | 69 66 20 28 74 68 65 46 |));.....|if (theF|
|00003060| 72 61 6d 65 2e 4c 65 66 | 74 28 29 20 3c 20 76 69 |rame.Lef|t() < vi|
|00003070| 73 53 63 72 65 65 6e 52 | 65 63 74 2e 4c 65 66 74 |sScreenR|ect.Left|
|00003080| 28 29 29 0d 09 09 09 64 | 65 6c 74 61 58 20 3d 20 |())....d|eltaX = |
|00003090| 28 76 69 73 53 63 72 65 | 65 6e 52 65 63 74 2e 4c |(visScre|enRect.L|
|000030a0| 65 66 74 28 29 20 2d 20 | 74 68 65 46 72 61 6d 65 |eft() - |theFrame|
|000030b0| 2e 4c 65 66 74 28 29 20 | 2b 20 63 6f 6e 74 65 6e |.Left() |+ conten|
|000030c0| 74 52 65 67 69 6f 6e 49 | 6e 73 65 74 2e 58 28 29 |tRegionI|nset.X()|
|000030d0| 29 3b 0d 09 09 65 6c 73 | 65 20 69 66 20 28 74 68 |);...els|e if (th|
|000030e0| 65 46 72 61 6d 65 2e 4c | 65 66 74 28 29 20 3e 20 |eFrame.L|eft() > |
|000030f0| 76 69 73 53 63 72 65 65 | 6e 52 65 63 74 2e 52 69 |visScree|nRect.Ri|
|00003100| 67 68 74 28 29 29 0d 09 | 09 09 64 65 6c 74 61 58 |ght())..|..deltaX|
|00003110| 20 3d 20 28 76 69 73 53 | 63 72 65 65 6e 52 65 63 | = (visS|creenRec|
|00003120| 74 2e 52 69 67 68 74 28 | 29 20 2d 20 74 68 65 46 |t.Right(|) - theF|
|00003130| 72 61 6d 65 2e 52 69 67 | 68 74 28 29 20 2d 20 63 |rame.Rig|ht() - c|
|00003140| 6f 6e 74 65 6e 74 52 65 | 67 69 6f 6e 49 6e 73 65 |ontentRe|gionInse|
|00003150| 74 2e 58 28 29 29 3b 0d | 0d 09 09 74 68 69 73 2d |t.X());.|...this-|
|00003160| 3e 4d 6f 76 65 54 6f 28 | 43 50 6f 69 6e 74 28 74 |>MoveTo(|CPoint(t|
|00003170| 68 65 46 72 61 6d 65 2e | 4c 65 66 74 28 29 20 2b |heFrame.|Left() +|
|00003180| 20 64 65 6c 74 61 58 2c | 20 74 68 65 46 72 61 6d | deltaX,| theFram|
|00003190| 65 2e 54 6f 70 28 29 20 | 2b 20 64 65 6c 74 61 59 |e.Top() |+ deltaY|
|000031a0| 29 29 3b 0d 09 7d 0d 23 | 65 6c 73 65 0d 09 2f 2f |));..}.#|else..//|
|000031b0| 20 54 68 69 73 20 72 6f | 75 74 69 6e 65 20 68 61 | This ro|utine ha|
|000031c0| 73 20 62 65 65 6e 20 70 | 72 6f 6d 6f 74 65 64 20 |s been p|romoted |
|000031d0| 69 6e 74 6f 20 74 68 65 | 20 41 50 49 2c 20 62 75 |into the| API, bu|
|000031e0| 74 20 6e 6f 74 20 64 6f | 63 75 6d 65 6e 74 65 64 |t not do|cumented|
|000031f0| 2e 0d 09 2f 2f 20 49 20 | 68 6f 70 65 20 74 68 69 |...// I |hope thi|
|00003200| 73 20 69 73 20 61 20 63 | 6f 72 72 65 63 74 20 69 |s is a c|orrect i|
|00003210| 6e 74 65 72 70 72 65 74 | 61 74 69 6f 6e 20 6f 66 |nterpret|ation of|
|00003220| 20 77 68 61 74 20 69 74 | 20 64 6f 65 73 21 0d 09 | what it| does!..|
|00003230| 43 68 65 63 6b 57 69 6e | 64 6f 77 50 6f 73 69 74 |CheckWin|dowPosit|
|00003240| 69 6f 6e 28 47 65 74 44 | 69 61 6c 6f 67 57 69 6e |ion(GetD|ialogWin|
|00003250| 64 6f 77 28 66 44 6c 6f | 67 29 2c 20 63 63 44 72 |dow(fDlo|g), ccDr|
|00003260| 61 67 42 61 72 2c 20 66 | 61 6c 73 65 29 3b 0d 23 |agBar, f|alse);.#|
|00003270| 65 6e 64 69 66 0d 7d 0d | 0d 0d 0d 2f 2f 20 2d 2d |endif.}.|...// --|
|00003280| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003290| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000032a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000032b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000032c0| 2d 2d 0d 2f 2f 20 47 65 | 74 4d 61 78 49 6e 74 65 |--.// Ge|tMaxInte|
|000032d0| 72 73 65 63 74 65 64 44 | 65 76 69 63 65 0d 2f 2f |rsectedD|evice.//|
|000032e0| 20 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | -------|--------|
|000032f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003300| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003310| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003320| 2d 2d 2d 2d 2d 0d 2f 2f | 20 52 65 74 75 72 6e 73 |-----.//| Returns|
|00003330| 20 74 68 65 20 64 65 76 | 69 63 65 20 74 68 61 74 | the dev|ice that|
|00003340| 20 69 6e 74 65 72 73 65 | 63 74 73 20 6d 6f 73 74 | interse|cts most|
|00003350| 20 6f 66 20 74 68 65 20 | 73 70 65 63 69 66 69 65 | of the |specifie|
|00003360| 64 20 72 65 63 74 61 6e | 67 6c 65 0d 0d 47 44 48 |d rectan|gle..GDH|
|00003370| 61 6e 64 6c 65 20 43 57 | 69 6e 64 6f 77 3a 3a 47 |andle CW|indow::G|
|00003380| 65 74 4d 61 78 49 6e 74 | 65 72 73 65 63 74 65 64 |etMaxInt|ersected|
|00003390| 44 65 76 69 63 65 28 43 | 52 65 63 74 26 20 73 63 |Device(C|Rect& sc|
|000033a0| 72 65 65 6e 52 65 63 74 | 29 0d 7b 0d 09 6c 6f 6e |reenRect|).{..lon|
|000033b0| 67 20 6d 61 78 53 65 63 | 74 41 72 65 61 20 3d 20 |g maxSec|tArea = |
|000033c0| 30 3b 0d 09 43 54 65 6d | 70 52 67 6e 20 73 74 72 |0;..CTem|pRgn str|
|000033d0| 75 63 74 75 72 65 3b 0d | 09 47 65 74 57 69 6e 64 |ucture;.|.GetWind|
|000033e0| 6f 77 53 74 72 75 63 74 | 75 72 65 52 67 6e 28 47 |owStruct|ureRgn(G|
|000033f0| 65 74 57 69 6e 64 6f 77 | 52 65 66 28 29 2c 20 73 |etWindow|Ref(), s|
|00003400| 74 72 75 63 74 75 72 65 | 29 3b 0d 09 52 65 63 74 |tructure|);..Rect|
|00003410| 20 67 6c 6f 62 61 6c 53 | 74 72 75 63 52 65 63 74 | globalS|trucRect|
|00003420| 20 3d 20 28 2a 73 74 72 | 75 63 74 75 72 65 29 2d | = (*str|ucture)-|
|00003430| 3e 72 67 6e 42 42 6f 78 | 3b 0d 0d 09 47 44 48 61 |>rgnBBox|;...GDHa|
|00003440| 6e 64 6c 65 20 61 47 44 | 48 61 6e 64 6c 65 20 3d |ndle aGD|Handle =|
|00003450| 20 47 65 74 44 65 76 69 | 63 65 4c 69 73 74 28 29 | GetDevi|ceList()|
|00003460| 3b 0d 09 47 44 48 61 6e | 64 6c 65 20 6d 61 78 53 |;..GDHan|dle maxS|
|00003470| 65 63 74 47 44 20 3d 20 | 47 65 74 4d 61 69 6e 44 |ectGD = |GetMainD|
|00003480| 65 76 69 63 65 28 29 3b | 09 09 09 2f 2f 20 73 65 |evice();|...// se|
|00003490| 74 20 61 73 20 62 65 73 | 74 20 63 68 6f 69 63 65 |t as bes|t choice|
|000034a0| 20 64 65 66 61 75 6c 74 | 20 0d 09 77 68 69 6c 65 | default| ..while|
|000034b0| 20 28 61 47 44 48 61 6e | 64 6c 65 29 0d 09 7b 09 | (aGDHan|dle)..{.|
|000034c0| 09 09 09 09 09 09 09 09 | 09 2f 2f 20 63 61 6c 63 |........|.// calc|
|000034d0| 20 77 68 69 63 68 20 73 | 63 72 6e 20 69 6e 74 65 | which s|crn inte|
|000034e0| 72 73 65 63 74 73 20 6c | 61 72 67 65 73 74 20 70 |rsects l|argest p|
|000034f0| 61 72 74 20 6f 66 20 77 | 69 6e 64 6f 77 0d 09 09 |art of w|indow...|
|00003500| 69 66 20 28 54 65 73 74 | 44 65 76 69 63 65 41 74 |if (Test|DeviceAt|
|00003510| 74 72 69 62 75 74 65 28 | 61 47 44 48 61 6e 64 6c |tribute(|aGDHandl|
|00003520| 65 2c 20 73 63 72 65 65 | 6e 44 65 76 69 63 65 29 |e, scree|nDevice)|
|00003530| 20 26 26 20 54 65 73 74 | 44 65 76 69 63 65 41 74 | && Test|DeviceAt|
|00003540| 74 72 69 62 75 74 65 28 | 61 47 44 48 61 6e 64 6c |tribute(|aGDHandl|
|00003550| 65 2c 20 73 63 72 65 65 | 6e 41 63 74 69 76 65 29 |e, scree|nActive)|
|00003560| 29 0d 09 09 7b 0d 09 09 | 09 52 65 63 74 20 61 47 |)...{...|.Rect aG|
|00003570| 44 53 63 72 65 65 6e 52 | 65 63 74 20 3d 20 28 2a |DScreenR|ect = (*|
|00003580| 61 47 44 48 61 6e 64 6c | 65 29 2d 3e 67 64 52 65 |aGDHandl|e)->gdRe|
|00003590| 63 74 3b 0d 09 09 09 43 | 52 65 63 74 20 67 64 53 |ct;....C|Rect gdS|
|000035a0| 65 63 74 52 65 63 74 3b | 0d 0d 09 09 09 69 66 20 |ectRect;|.....if |
|000035b0| 28 53 65 63 74 52 65 63 | 74 28 26 67 6c 6f 62 61 |(SectRec|t(&globa|
|000035c0| 6c 53 74 72 75 63 52 65 | 63 74 2c 20 26 61 47 44 |lStrucRe|ct, &aGD|
|000035d0| 53 63 72 65 65 6e 52 65 | 63 74 2c 20 67 64 53 65 |ScreenRe|ct, gdSe|
|000035e0| 63 74 52 65 63 74 29 29 | 0d 09 09 09 7b 0d 09 09 |ctRect))|....{...|
|000035f0| 09 09 6c 6f 6e 67 20 73 | 65 63 74 41 72 65 61 20 |..long s|ectArea |
|00003600| 3d 20 67 64 53 65 63 74 | 52 65 63 74 2e 57 69 64 |= gdSect|Rect.Wid|
|00003610| 74 68 28 29 20 2a 20 67 | 64 53 65 63 74 52 65 63 |th() * g|dSectRec|
|00003620| 74 2e 48 65 69 67 68 74 | 28 29 3b 0d 09 09 09 09 |t.Height|();.....|
|00003630| 69 66 20 28 73 65 63 74 | 41 72 65 61 20 3e 20 6d |if (sect|Area > m|
|00003640| 61 78 53 65 63 74 41 72 | 65 61 29 09 09 2f 2f 20 |axSectAr|ea)..// |
|00003650| 64 6f 20 77 65 20 68 61 | 76 65 20 61 20 6e 65 77 |do we ha|ve a new|
|00003660| 20 77 69 6e 6e 65 72 3f | 20 0d 09 09 09 09 7b 0d | winner?| .....{.|
|00003670| 09 09 09 09 09 6d 61 78 | 53 65 63 74 41 72 65 61 |.....max|SectArea|
|00003680| 20 3d 20 73 65 63 74 41 | 72 65 61 3b 0d 09 09 09 | = sectA|rea;....|
|00003690| 09 09 6d 61 78 53 65 63 | 74 47 44 20 3d 20 61 47 |..maxSec|tGD = aG|
|000036a0| 44 48 61 6e 64 6c 65 3b | 0d 09 09 09 09 7d 0d 09 |DHandle;|.....}..|
|000036b0| 09 09 7d 0d 09 09 7d 0d | 09 09 61 47 44 48 61 6e |..}...}.|..aGDHan|
|000036c0| 64 6c 65 20 3d 20 47 65 | 74 4e 65 78 74 44 65 76 |dle = Ge|tNextDev|
|000036d0| 69 63 65 28 61 47 44 48 | 61 6e 64 6c 65 29 3b 0d |ice(aGDH|andle);.|
|000036e0| 09 7d 0d 0d 09 69 66 20 | 28 6d 61 78 53 65 63 74 |.}...if |(maxSect|
|000036f0| 47 44 20 21 3d 20 47 65 | 74 4d 61 69 6e 44 65 76 |GD != Ge|tMainDev|
|00003700| 69 63 65 28 29 29 0d 09 | 09 73 63 72 65 65 6e 52 |ice())..|.screenR|
|00003710| 65 63 74 20 3d 20 28 2a | 6d 61 78 53 65 63 74 47 |ect = (*|maxSectG|
|00003720| 44 29 2d 3e 67 64 52 65 | 63 74 3b 0d 09 65 6c 73 |D)->gdRe|ct;..els|
|00003730| 65 0d 09 7b 09 09 09 09 | 09 09 09 09 09 09 2f 2f |e..{....|......//|
|00003740| 20 41 63 63 6f 75 6e 74 | 20 66 6f 72 20 6d 65 6e | Account| for men|
|00003750| 75 20 62 61 72 20 6f 6e | 20 74 68 65 20 6d 61 69 |u bar on| the mai|
|00003760| 6e 20 73 63 72 65 65 6e | 2e 0d 09 09 09 09 09 09 |n screen|........|
|00003770| 09 09 09 09 09 2f 2f 20 | 44 6f 6e 27 74 20 6a 75 |.....// |Don't ju|
|00003780| 73 74 20 61 73 73 75 6d | 65 20 74 68 61 74 20 69 |st assum|e that i|
|00003790| 74 27 73 20 61 74 20 74 | 68 65 20 74 6f 70 20 6f |t's at t|he top o|
|000037a0| 66 0d 09 09 09 09 09 09 | 09 09 09 09 09 2f 2f 20 |f.......|.....// |
|000037b0| 74 68 65 20 73 63 72 65 | 65 6e 21 0d 09 09 43 54 |the scre|en!...CT|
|000037c0| 65 6d 70 52 67 6e 20 74 | 65 6d 70 52 67 6e 3b 0d |empRgn t|empRgn;.|
|000037d0| 09 09 52 65 63 74 20 67 | 64 52 65 63 74 20 3d 20 |..Rect g|dRect = |
|000037e0| 28 2a 6d 61 78 53 65 63 | 74 47 44 29 2d 3e 67 64 |(*maxSec|tGD)->gd|
|000037f0| 52 65 63 74 3b 0d 0d 09 | 09 52 65 63 74 52 67 6e |Rect;...|.RectRgn|
|00003800| 28 74 65 6d 70 52 67 6e | 2c 20 26 67 64 52 65 63 |(tempRgn|, &gdRec|
|00003810| 74 29 3b 09 09 09 09 09 | 09 2f 2f 20 6d 61 69 6e |t);.....|.// main|
|00003820| 20 73 63 72 65 65 6e 20 | 77 69 74 68 20 6d 65 6e | screen |with men|
|00003830| 75 62 61 72 20 0d 09 09 | 53 65 63 74 52 67 6e 28 |ubar ...|SectRgn(|
|00003840| 74 65 6d 70 52 67 6e 2c | 20 4c 4d 47 65 74 47 72 |tempRgn,| LMGetGr|
|00003850| 61 79 52 67 6e 28 29 2c | 20 74 65 6d 70 52 67 6e |ayRgn(),| tempRgn|
|00003860| 29 3b 09 09 2f 2f 20 47 | 65 74 47 72 61 79 52 67 |);..// G|etGrayRg|
|00003870| 6e 20 3d 3d 20 64 65 73 | 6b 74 6f 70 20 72 67 6e |n == des|ktop rgn|
|00003880| 20 77 2f 6f 20 6d 65 6e | 75 62 61 72 20 0d 09 09 | w/o men|ubar ...|
|00003890| 73 63 72 65 65 6e 52 65 | 63 74 20 3d 20 28 2a 28 |screenRe|ct = (*(|
|000038a0| 52 67 6e 48 61 6e 64 6c | 65 29 20 74 65 6d 70 52 |RgnHandl|e) tempR|
|000038b0| 67 6e 29 2d 3e 72 67 6e | 42 42 6f 78 3b 09 2f 2f |gn)->rgn|BBox;.//|
|000038c0| 20 3d 3e 20 6d 61 69 6e | 20 73 63 72 65 65 6e 20 | => main| screen |
|000038d0| 77 2f 6f 20 6d 65 6e 75 | 62 61 72 20 0d 09 7d 0d |w/o menu|bar ..}.|
|000038e0| 09 72 65 74 75 72 6e 20 | 6d 61 78 53 65 63 74 47 |.return |maxSectG|
|000038f0| 44 3b 0d 7d 0d 0d 0d 0d | 2f 2f 20 2d 2d 2d 2d 2d |D;.}....|// -----|
|00003900| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003910| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003920| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003930| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 0d |--------|-------.|
|00003940| 2f 2f 20 44 72 61 77 44 | 69 73 70 61 74 63 68 0d |// DrawD|ispatch.|
|00003950| 2f 2f 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |// -----|--------|
|00003960| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003970| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003980| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003990| 2d 2d 2d 2d 2d 2d 2d 0d | 2f 2f 20 43 61 6c 6c 62 |-------.|// Callb|
|000039a0| 61 63 6b 20 66 75 6e 63 | 74 69 6f 6e 20 74 68 61 |ack func|tion tha|
|000039b0| 74 20 64 69 73 70 61 74 | 63 68 20 74 6f 20 74 68 |t dispat|ch to th|
|000039c0| 65 20 64 72 61 77 20 6d | 65 74 68 6f 64 0d 0d 70 |e draw m|ethod..p|
|000039d0| 61 73 63 61 6c 20 76 6f | 69 64 20 43 57 69 6e 64 |ascal vo|id CWind|
|000039e0| 6f 77 3a 3a 44 72 61 77 | 44 69 73 70 61 74 63 68 |ow::Draw|Dispatch|
|000039f0| 28 73 68 6f 72 74 20 64 | 65 70 74 68 2c 20 73 68 |(short d|epth, sh|
|00003a00| 6f 72 74 20 64 65 76 69 | 63 65 46 6c 61 67 73 2c |ort devi|ceFlags,|
|00003a10| 0d 09 09 09 09 09 09 20 | 47 44 48 61 6e 64 6c 65 |....... |GDHandle|
|00003a20| 20 74 61 72 67 65 74 44 | 65 76 69 63 65 2c 20 43 | targetD|evice, C|
|00003a30| 57 69 6e 64 6f 77 2a 20 | 77 69 6e 64 6f 77 29 0d |Window* |window).|
|00003a40| 7b 0d 23 70 72 61 67 6d | 61 20 75 6e 75 73 65 64 |{.#pragm|a unused|
|00003a50| 28 74 61 72 67 65 74 44 | 65 76 69 63 65 29 0d 09 |(targetD|evice)..|
|00003a60| 2f 2f 20 43 6c 69 70 20 | 74 6f 20 74 68 65 20 76 |// Clip |to the v|
|00003a70| 69 73 69 62 6c 65 20 72 | 65 67 69 6f 6e 0d 09 53 |isible r|egion..S|
|00003a80| 65 74 43 6c 69 70 28 77 | 69 6e 64 6f 77 2d 3e 47 |etClip(w|indow->G|
|00003a90| 65 74 47 72 61 66 50 74 | 72 28 29 2d 3e 76 69 73 |etGrafPt|r()->vis|
|00003aa0| 52 67 6e 29 3b 0d 09 0d | 09 42 6f 6f 6c 65 61 6e |Rgn);...|.Boolean|
|00003ab0| 20 69 73 43 6f 6c 6f 72 | 20 3d 20 28 28 64 65 76 | isColor| = ((dev|
|00003ac0| 69 63 65 46 6c 61 67 73 | 20 26 20 28 31 4c 20 3c |iceFlags| & (1L <|
|00003ad0| 3c 20 67 64 44 65 76 54 | 79 70 65 29 29 20 3d 3d |< gdDevT|ype)) ==|
|00003ae0| 20 30 29 3b 0d 09 54 44 | 72 61 77 43 6f 6e 74 65 | 0);..TD|rawConte|
|00003af0| 78 74 20 64 72 61 77 43 | 6f 6e 74 65 78 74 28 77 |xt drawC|ontext(w|
|00003b00| 69 6e 64 6f 77 2d 3e 47 | 65 74 47 72 61 66 50 74 |indow->G|etGrafPt|
|00003b10| 72 28 29 2c 20 64 65 70 | 74 68 2c 20 69 73 43 6f |r(), dep|th, isCo|
|00003b20| 6c 6f 72 29 3b 0d 09 69 | 66 20 28 64 72 61 77 43 |lor);..i|f (drawC|
|00003b30| 6f 6e 74 65 78 74 2e 4c | 6f 63 6b 28 29 29 0d 09 |ontext.L|ock())..|
|00003b40| 7b 0d 09 09 77 69 6e 64 | 6f 77 2d 3e 44 72 61 77 |{...wind|ow->Draw|
|00003b50| 28 64 72 61 77 43 6f 6e | 74 65 78 74 29 3b 0d 09 |(drawCon|text);..|
|00003b60| 09 64 72 61 77 43 6f 6e | 74 65 78 74 2e 55 6e 6c |.drawCon|text.Unl|
|00003b70| 6f 63 6b 28 29 3b 0d 09 | 7d 0d 7d 0d 0d 0d 0d 2f |ock();..|}.}..../|
|00003b80| 2f 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |/ ------|--------|
|00003b90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003ba0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003bb0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003bc0| 2d 2d 2d 2d 2d 2d 0d 2f | 2f 20 44 6f 55 70 64 61 |------./|/ DoUpda|
|00003bd0| 74 65 0d 2f 2f 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |te.// --|--------|
|00003be0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003bf0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003c00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003c10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 0d 2f 2f 20 46 75 |--------|--.// Fu|
|00003c20| 6e 63 74 69 6f 6e 20 74 | 68 61 74 20 70 72 6f 63 |nction t|hat proc|
|00003c30| 65 73 73 65 73 20 61 6c | 6c 20 74 68 65 20 75 70 |esses al|l the up|
|00003c40| 64 61 74 65 20 65 76 65 | 6e 74 73 2c 20 63 61 6c |date eve|nts, cal|
|00003c50| 6c 69 6e 67 20 74 68 65 | 20 44 72 61 77 28 29 0d |ling the| Draw().|
|00003c60| 2f 2f 20 6d 65 74 68 6f | 64 20 61 73 20 61 70 70 |// metho|d as app|
|00003c70| 72 6f 70 72 69 61 74 65 | 0d 0d 76 6f 69 64 20 43 |ropriate|..void C|
|00003c80| 57 69 6e 64 6f 77 3a 3a | 44 6f 55 70 64 61 74 65 |Window::|DoUpdate|
|00003c90| 28 52 67 6e 48 61 6e 64 | 6c 65 20 61 72 65 61 29 |(RgnHand|le area)|
|00003ca0| 0d 7b 0d 09 2f 2f 20 53 | 65 74 20 61 20 22 6e 6f |.{..// S|et a "no|
|00003cb0| 72 6d 61 6c 22 20 67 72 | 61 70 68 69 63 20 65 6e |rmal" gr|aphic en|
|00003cc0| 76 2e 20 0d 09 53 65 74 | 50 6f 72 74 28 47 65 74 |v. ..Set|Port(Get|
|00003cd0| 47 72 61 66 50 74 72 28 | 29 29 3b 0d 09 50 65 6e |GrafPtr(|));..Pen|
|00003ce0| 4e 6f 72 6d 61 6c 28 29 | 3b 0d 09 2f 2f 46 6f 72 |Normal()|;..//For|
|00003cf0| 65 43 6f 6c 6f 72 28 62 | 6c 61 63 6b 43 6f 6c 6f |eColor(b|lackColo|
|00003d00| 72 29 3b 0d 09 2f 2f 42 | 61 63 6b 43 6f 6c 6f 72 |r);..//B|ackColor|
|00003d10| 28 77 68 69 74 65 43 6f | 6c 6f 72 29 3b 0d 0d 09 |(whiteCo|lor);...|
|00003d20| 2f 2f 20 4c 6f 6f 70 20 | 74 68 72 75 20 61 6c 6c |// Loop |thru all|
|00003d30| 20 74 68 65 20 64 65 76 | 69 63 65 73 20 61 6e 64 | the dev|ices and|
|00003d40| 20 63 61 6c 6c 20 74 68 | 65 20 44 72 61 77 44 69 | call th|e DrawDi|
|00003d50| 73 70 61 74 63 68 20 70 | 72 6f 63 20 65 61 63 68 |spatch p|roc each|
|00003d60| 20 74 69 6d 65 0d 09 7b | 0d 09 09 44 65 76 69 63 | time..{|...Devic|
|00003d70| 65 4c 6f 6f 70 44 72 61 | 77 69 6e 67 55 50 50 20 |eLoopDra|wingUPP |
|00003d80| 75 70 70 20 3d 20 4e 65 | 77 44 65 76 69 63 65 4c |upp = Ne|wDeviceL|
|00003d90| 6f 6f 70 44 72 61 77 69 | 6e 67 50 72 6f 63 28 44 |oopDrawi|ngProc(D|
|00003da0| 72 61 77 44 69 73 70 61 | 74 63 68 29 3b 0d 09 09 |rawDispa|tch);...|
|00003db0| 0d 09 09 44 65 76 69 63 | 65 4c 6f 6f 70 28 61 72 |...Devic|eLoop(ar|
|00003dc0| 65 61 2c 20 75 70 70 2c | 20 28 6c 6f 6e 67 29 74 |ea, upp,| (long)t|
|00003dd0| 68 69 73 2c 20 28 44 65 | 76 69 63 65 4c 6f 6f 70 |his, (De|viceLoop|
|00003de0| 46 6c 61 67 73 29 30 29 | 3b 0d 09 09 09 0d 09 09 |Flags)0)|;.......|
|00003df0| 44 69 73 70 6f 73 65 52 | 6f 75 74 69 6e 65 44 65 |DisposeR|outineDe|
|00003e00| 73 63 72 69 70 74 6f 72 | 28 75 70 70 29 3b 0d 09 |scriptor|(upp);..|
|00003e10| 7d 0d 0d 09 43 6c 69 70 | 52 65 63 74 28 26 47 65 |}...Clip|Rect(&Ge|
|00003e20| 74 47 72 61 66 50 74 72 | 28 29 2d 3e 70 6f 72 74 |tGrafPtr|()->port|
|00003e30| 52 65 63 74 29 3b 09 2f | 2f 20 3f 3f 3f 20 55 73 |Rect);./|/ ??? Us|
|00003e40| 65 20 46 72 61 6d 65 28 | 29 20 69 6e 73 74 65 61 |e Frame(|) instea|
|00003e50| 64 0d 7d 0d 0d 0d 0d 2f | 2f 20 2d 2d 2d 2d 2d 2d |d.}..../|/ ------|
|00003e60| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003e70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003e80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003e90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0d 2f |--------|------./|
|00003ea0| 2f 20 44 72 61 77 47 72 | 6f 77 49 63 6f 6e 0d 2f |/ DrawGr|owIcon./|
|00003eb0| 2f 20 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |/ ------|--------|
|00003ec0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003ed0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003ee0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003ef0| 2d 2d 2d 2d 2d 2d 0d 2f | 2f 20 46 75 6e 63 74 69 |------./|/ Functi|
|00003f00| 6f 6e 20 74 68 61 74 20 | 64 72 61 77 73 20 74 68 |on that |draws th|
|00003f10| 65 20 67 72 6f 77 20 69 | 63 6f 6e 0d 0d 76 6f 69 |e grow i|con..voi|
|00003f20| 64 20 43 57 69 6e 64 6f | 77 3a 3a 44 72 61 77 47 |d CWindo|w::DrawG|
|00003f30| 72 6f 77 49 63 6f 6e 28 | 54 44 72 61 77 43 6f 6e |rowIcon(|TDrawCon|
|00003f40| 74 65 78 74 26 20 64 72 | 61 77 43 6f 6e 74 65 78 |text& dr|awContex|
|00003f50| 74 29 20 63 6f 6e 73 74 | 0d 7b 0d 09 2f 2f 09 44 |t) const|.{..//.D|
|00003f60| 72 61 77 20 74 68 65 20 | 67 72 6f 77 20 69 63 6f |raw the |grow ico|
|00003f70| 6e 2c 20 63 6c 69 70 70 | 65 64 20 74 6f 20 6f 6e |n, clipp|ed to on|
|00003f80| 6c 79 20 74 68 65 20 67 | 72 6f 77 20 69 63 6f 6e |ly the g|row icon|
|00003f90| 0d 09 2f 2f 20 28 64 72 | 61 77 73 20 61 6e 6e 6f |..// (dr|aws anno|
|00003fa0| 79 69 6e 67 20 6f 75 74 | 6c 69 6e 65 20 66 6f 72 |ying out|line for|
|00003fb0| 20 73 63 72 6f 6c 6c 62 | 61 72 73 20 65 6c 73 65 | scrollb|ars else|
|00003fc0| 29 0d 09 43 52 65 63 74 | 20 67 72 6f 77 49 63 6f |)..CRect| growIco|
|00003fd0| 6e 52 65 63 74 28 64 72 | 61 77 43 6f 6e 74 65 78 |nRect(dr|awContex|
|00003fe0| 74 2e 42 6f 75 6e 64 73 | 28 29 29 3b 0d 09 0d 09 |t.Bounds|());....|
|00003ff0| 67 72 6f 77 49 63 6f 6e | 52 65 63 74 2e 53 65 74 |growIcon|Rect.Set|
|00004000| 4c 65 66 74 54 6f 70 28 | 43 50 6f 69 6e 74 28 67 |LeftTop(|CPoint(g|
|00004010| 72 6f 77 49 63 6f 6e 52 | 65 63 74 2e 52 69 67 68 |rowIconR|ect.Righ|
|00004020| 74 28 29 20 2d 20 31 35 | 2c 20 67 72 6f 77 49 63 |t() - 15|, growIc|
|00004030| 6f 6e 52 65 63 74 2e 42 | 6f 74 74 6f 6d 28 29 20 |onRect.B|ottom() |
|00004040| 2d 20 31 35 29 29 3b 0d | 0d 09 7b 0d 09 09 43 52 |- 15));.|..{...CR|
|00004050| 65 63 74 20 61 72 65 61 | 28 28 2a 2a 47 65 74 47 |ect area|((**GetG|
|00004060| 72 61 66 50 74 72 28 29 | 2d 3e 76 69 73 52 67 6e |rafPtr()|->visRgn|
|00004070| 29 2e 72 67 6e 42 42 6f | 78 29 3b 0d 09 09 69 66 |).rgnBBo|x);...if|
|00004080| 20 28 3a 3a 53 65 63 74 | 52 65 63 74 28 67 72 6f | (::Sect|Rect(gro|
|00004090| 77 49 63 6f 6e 52 65 63 | 74 2c 20 61 72 65 61 2c |wIconRec|t, area,|
|000040a0| 20 67 72 6f 77 49 63 6f | 6e 52 65 63 74 29 29 0d | growIco|nRect)).|
|000040b0| 09 09 7b 0d 09 09 09 3a | 3a 43 6c 69 70 52 65 63 |..{....:|:ClipRec|
|000040c0| 74 28 67 72 6f 77 49 63 | 6f 6e 52 65 63 74 29 3b |t(growIc|onRect);|
|000040d0| 0d 09 09 09 3a 3a 44 72 | 61 77 47 72 6f 77 49 63 |....::Dr|awGrowIc|
|000040e0| 6f 6e 28 47 65 74 57 69 | 6e 64 6f 77 52 65 66 28 |on(GetWi|ndowRef(|
|000040f0| 29 29 3b 0d 09 09 09 3a | 3a 53 65 74 43 6c 69 70 |));....:|:SetClip|
|00004100| 28 47 65 74 57 69 6e 64 | 6f 77 50 6f 72 74 28 66 |(GetWind|owPort(f|
|00004110| 57 69 6e 64 6f 77 29 2d | 3e 76 69 73 52 67 6e 29 |Window)-|>visRgn)|
|00004120| 3b 09 09 09 09 2f 2f 20 | 52 65 73 74 6f 72 65 20 |;....// |Restore |
|00004130| 74 68 65 20 63 6c 69 70 | 20 72 65 67 69 6f 6e 20 |the clip| region |
|00004140| 74 6f 20 74 68 65 20 77 | 69 6e 64 6f 77 20 63 6f |to the w|indow co|
|00004150| 6e 74 65 6e 74 0d 09 09 | 7d 0d 09 7d 0d 7d 0d 00 |ntent...|}..}.}..|
|00004160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004180| 00 00 01 00 00 00 01 76 | 00 00 00 76 00 00 00 52 |.......v|...v...R|
|00004190| 02 01 00 0f 08 04 00 04 | 67 0e e1 41 12 18 08 81 |........|g..A....|
|000041a0| 00 0b 67 04 e1 81 12 18 | 74 01 08 04 00 07 67 16 |..g.....|t.....g.|
|000041b0| 0b 43 57 69 6e 64 6f 77 | 73 2e 63 70 02 00 00 00 |.CWindow|s.cp....|
|000041c0| 54 45 58 54 43 57 49 45 | 01 00 00 68 00 40 00 00 |TEXTCWIE|...h.@..|
|000041d0| 00 00 54 45 58 54 43 57 | 49 45 01 00 00 68 00 40 |..TEXTCW|IE...h.@|
|000041e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000041f0| 00 00 a8 f4 af 7d 00 00 | 40 df 00 00 01 c8 00 00 |.....}..|@.......|
|00004200| 00 32 65 10 2f 00 20 01 | a0 2e 20 1f d1 c1 d3 c1 |.2e./. .|.. .....|
|00004210| 60 06 12 d8 51 c9 ff fc | 08 04 00 06 67 04 26 0d |`...Q...|....g.&.|
|00004220| d7 92 51 c8 ff 66 4c df | 0f ff 4e 75 7a 00 60 04 |..Q..fL.|..Nuz.`.|
|00004230| e1 8d 1a 18 51 ce ff fa | 4e 75 74 00 20 5f 20 1f |....Q...|Nut. _ .|
|00004240| 22 5f 67 28 32 09 02 41 | 00 03 67 08 12 c2 53 80 |"_g(2..A|..g...S.|
|00004250| 66 f2 60 18 22 00 e4 89 | 67 06 22 c2 53 81 66 fa |f.`."...|g.".S.f.|
|00004260| 02 40 00 03 60 02 12 c2 | 51 c8 ff fc 4e d0 00 00 |.@..`...|Q...N...|
|00004270| 07 2a 00 00 00 00 00 45 | 00 00 10 29 00 da 28 25 |.*.....E|...)..(%|
|00004280| 00 00 00 1e 00 27 01 de | 01 8d 04 3d 00 27 01 de |.....'..|...=.'..|
|00004290| 01 8d 04 3d 00 00 1a 64 | 00 00 00 00 00 00 00 00 |...=...d|........|
|000042a0| 00 00 00 00 00 48 00 09 | 4d 6f 6e 61 63 6f 00 00 |.....H..|Monaco..|
|000042b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000042c0| 00 00 00 00 00 00 00 00 | 00 03 00 04 00 c1 00 7a |........|.......z|
|000042d0| 02 d7 02 e7 00 c1 00 7a | 02 d7 02 e7 ad fc 2b b9 |.......z|......+.|
|000042e0| 00 00 09 dc 00 00 09 dc | 00 00 00 00 01 00 00 00 |........|........|
|000042f0| 00 04 00 01 00 01 00 00 | 01 00 00 00 01 76 00 00 |........|.....v..|
|00004300| 00 76 00 00 00 52 02 b0 | f3 38 30 7a 00 00 00 1c |.v...R..|.80z....|
|00004310| 00 52 00 01 4d 50 53 52 | 00 01 00 12 4d 57 42 42 |.R..MPSR|....MWBB|
|00004320| 00 00 00 2a 03 f0 ff ff | 00 00 00 00 00 00 00 00 |...*....|........|
|00004330| 03 ed ff ff 00 00 00 22 | 00 00 00 00 03 f0 ff ff |......."|........|
|00004340| 00 00 00 6e 00 00 00 00 | 00 00 00 00 00 00 00 00 |...n....|........|
|00004350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+